@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
@@ -1,7 +1,7 @@
1
1
  import threekitAPI from '../api';
2
2
  import { IThreekitPlayer, IThreekitPrivatePlayer, IThreekitPrivateConfigurator } from '../types';
3
3
  import { IWishlist } from './wishlist';
4
- import snapshots from './snapshots';
4
+ import snapshot from './snapshot';
5
5
  import { ISaveConfiguration } from '../api/configurations';
6
6
  import { ICreateOrder } from '../api/orders';
7
7
  import { ICartItem } from '../http/orders';
@@ -22,7 +22,7 @@ declare class Treble {
22
22
  _player: IThreekitPrivatePlayer;
23
23
  wishlist: IWishlist;
24
24
  private _snapshots;
25
- takeSnapshots: typeof snapshots['takeSnapshots'];
25
+ takeSnapshots: (typeof snapshot)['takeSnapshots'];
26
26
  _debugMode: boolean;
27
27
  constructor({ player, orgId }: ITreble);
28
28
  createOrder: (order?: IOrder) => Promise<import("../http/orders").IOrderResponse>;
@@ -45,7 +45,7 @@ var types_1 = require("../types");
45
45
  var constants_1 = require("../constants");
46
46
  var utils_1 = require("../utils");
47
47
  var wishlist_1 = __importDefault(require("./wishlist"));
48
- var snapshots_1 = __importDefault(require("./snapshots"));
48
+ var snapshot_1 = __importDefault(require("./snapshot"));
49
49
  var Treble = (function () {
50
50
  function Treble(_a) {
51
51
  var player = _a.player, orgId = _a.orgId;
@@ -147,7 +147,7 @@ var Treble = (function () {
147
147
  };
148
148
  this._api = api_1.default;
149
149
  this.wishlist = (0, wishlist_1.default)(orgId);
150
- this._snapshots = snapshots_1.default;
150
+ this._snapshots = snapshot_1.default;
151
151
  this.takeSnapshots = this._snapshots.takeSnapshots;
152
152
  this._player = player.enableApi(types_1.PRIVATE_APIS.PLAYER);
153
153
  this._debugMode = constants_1.TREBLE_DEBUG;
@@ -1,5 +1,5 @@
1
1
  import Treble from './Treble';
2
2
  export * from './Treble';
3
- export * from './snapshots';
3
+ export * from './snapshot';
4
4
  export * from './wishlist';
5
5
  export default Treble;
@@ -19,6 +19,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
20
  var Treble_1 = __importDefault(require("./Treble"));
21
21
  __exportStar(require("./Treble"), exports);
22
- __exportStar(require("./snapshots"), exports);
22
+ __exportStar(require("./snapshot"), exports);
23
23
  __exportStar(require("./wishlist"), exports);
24
24
  exports.default = Treble_1.default;
@@ -37,13 +37,14 @@ var GlobalStyles_styles_1 = __importDefault(require("./GlobalStyles.styles"));
37
37
  var DevTools_1 = __importDefault(require("../DevTools"));
38
38
  var App = function (props) {
39
39
  var dispatch = (0, store_1.useThreekitDispatch)();
40
- var playerConfig = props.playerConfig, assetId = props.assetId, productId = props.productId, project = props.project, locale = props.locale, threekitEnv = props.threekitEnv, eventHandlers = props.eventHandlers;
40
+ var playerConfig = props.playerConfig, assetId = props.assetId, customId = props.customId, productId = props.productId, project = props.project, locale = props.locale, threekitEnv = props.threekitEnv, eventHandlers = props.eventHandlers;
41
41
  (0, react_1.useEffect)(function () {
42
42
  var init = function () {
43
43
  dispatch((0, treble_1.launch)({
44
44
  playerConfig: playerConfig,
45
45
  productId: productId,
46
46
  assetId: assetId,
47
+ customId: customId,
47
48
  project: project,
48
49
  locale: locale,
49
50
  threekitEnv: threekitEnv,
@@ -59,7 +60,7 @@ var ThreekitProvider = function (props) {
59
60
  return (react_1.default.createElement(react_redux_1.Provider, { store: (0, store_1.default)(props.reducer) },
60
61
  react_1.default.createElement(styled_components_1.ThemeProvider, { theme: theme_1.default },
61
62
  react_1.default.createElement(GlobalStyles_styles_1.default, null),
62
- react_1.default.createElement(App, { locale: props.locale, assetId: props.assetId, productId: props.productId, project: props.project, playerConfig: props.playerConfig, threekitEnv: props.threekitEnv, eventHandlers: props.eventHandlers }, props.children),
63
+ react_1.default.createElement(App, { locale: props.locale, assetId: props.assetId, customId: props.customId, productId: props.productId, project: props.project, playerConfig: props.playerConfig, threekitEnv: props.threekitEnv, eventHandlers: props.eventHandlers }, props.children),
63
64
  constants_1.TREBLE_DEBUG ? null : react_1.default.createElement(DevTools_1.default, null))));
64
65
  };
65
66
  exports.default = ThreekitProvider;
@@ -3,6 +3,7 @@ export interface IConnectionConfig {
3
3
  authToken?: string;
4
4
  orgId?: string;
5
5
  assetId?: string;
6
+ customId?: string;
6
7
  threekitDomain?: string;
7
8
  serverUrl?: string;
8
9
  cacheParameters?: ICacheParameters;
@@ -11,15 +12,17 @@ export declare class ThreekitConnection {
11
12
  _authToken: string;
12
13
  _orgId: string;
13
14
  _assetId: string;
15
+ _customId: string;
14
16
  _threekitDomain: string;
15
17
  _serverUrl: string;
16
18
  _cacheParameters?: ICacheParameters;
17
19
  constructor();
18
- connect(config: IConnectionConfig): Promise<void>;
20
+ connect(config: IConnectionConfig): void;
19
21
  getConnection(): {
20
22
  authToken: string;
21
23
  orgId: string;
22
24
  assetId: string;
25
+ customId: string;
23
26
  threekitDomain: string;
24
27
  serverUrl: string;
25
28
  cacheParameters: ICacheParameters | undefined;
@@ -1,40 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (_) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
2
  Object.defineProperty(exports, "__esModule", { value: true });
39
3
  exports.ThreekitConnection = void 0;
40
4
  var ThreekitConnection = (function () {
@@ -42,27 +6,25 @@ var ThreekitConnection = (function () {
42
6
  this._authToken = '';
43
7
  this._orgId = '';
44
8
  this._assetId = '';
9
+ this._customId = '';
45
10
  this._serverUrl = '';
46
11
  this._threekitDomain = 'https://admin-fts.threekit.com';
47
12
  }
48
13
  ThreekitConnection.prototype.connect = function (config) {
49
- return __awaiter(this, void 0, void 0, function () {
50
- return __generator(this, function (_a) {
51
- if (config.authToken)
52
- this._authToken = config.authToken;
53
- if (config.orgId)
54
- this._orgId = config.orgId;
55
- if (config.assetId)
56
- this._assetId = config.assetId;
57
- if (config.serverUrl)
58
- this._serverUrl = config.serverUrl;
59
- if (config.threekitDomain)
60
- this._threekitDomain = "https://".concat(config.threekitDomain);
61
- if (config.cacheParameters)
62
- this._cacheParameters = config.cacheParameters;
63
- return [2];
64
- });
65
- });
14
+ if (config.authToken)
15
+ this._authToken = config.authToken;
16
+ if (config.orgId)
17
+ this._orgId = config.orgId;
18
+ if (config.assetId)
19
+ this._assetId = config.assetId;
20
+ if (config.customId)
21
+ this._customId = config.customId;
22
+ if (config.serverUrl)
23
+ this._serverUrl = config.serverUrl;
24
+ if (config.threekitDomain)
25
+ this._threekitDomain = "https://".concat(config.threekitDomain);
26
+ if (config.cacheParameters)
27
+ this._cacheParameters = config.cacheParameters;
66
28
  };
67
29
  ThreekitConnection.prototype.getConnection = function () {
68
30
  var _a;
@@ -72,6 +34,7 @@ var ThreekitConnection = (function () {
72
34
  authToken: this._authToken,
73
35
  orgId: this._orgId,
74
36
  assetId: this._assetId,
37
+ customId: this._customId,
75
38
  threekitDomain: this._threekitDomain,
76
39
  serverUrl: this._serverUrl,
77
40
  cacheParameters: this._cacheParameters,
@@ -35,14 +35,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
38
  Object.defineProperty(exports, "__esModule", { value: true });
42
39
  var store_1 = require("../../store");
43
40
  var attributes_1 = require("../../store/attributes");
44
41
  var utils_1 = require("../../utils");
45
- var api_1 = __importDefault(require("../../api"));
46
42
  var utils_2 = require("../../utils");
47
43
  var useAttribute = function (attributeName) {
48
44
  var _a;
@@ -66,7 +62,7 @@ var useAttribute = function (attributeName) {
66
62
  if (!!value) return [3, 1];
67
63
  preppedValue = (0, utils_1.selectionToConfiguration)('', attribute.type);
68
64
  return [3, 3];
69
- case 1: return [4, api_1.default.catalog.uploadAsset(value)];
65
+ case 1: return [4, window.threekit.player.uploadImage(value)];
70
66
  case 2:
71
67
  assetId = _b.sent();
72
68
  if (assetId)
@@ -57,8 +57,7 @@ var useNestedConfigurator = function (address) {
57
57
  return;
58
58
  if (playerLoading)
59
59
  return;
60
- configurator.current =
61
- window.threekit.treble.getNestedConfigurator(address);
60
+ configurator.current = window.threekit.configurator.getNestedConfigurator([address].flat());
62
61
  if (!configurator.current)
63
62
  return;
64
63
  var updatedAttrs = configurator.current.getDisplayAttributes();
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ import type { ICoordinate2D } from './types';
3
+ interface ISpacesLayout {
4
+ loops?: Array<ICoordinate2D[]>;
5
+ size?: number;
6
+ color?: string;
7
+ padding?: number;
8
+ strokeWidth?: number;
9
+ }
10
+ export default function SpacesLayout(props: ISpacesLayout): JSX.Element;
11
+ export {};
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ var react_1 = __importDefault(require("react"));
18
+ function SpacesLayout(props) {
19
+ var loops = props.loops;
20
+ var size = props.size || 20;
21
+ var padding = props.padding || 2;
22
+ var strokeWidth = props.strokeWidth || 2;
23
+ if (!(loops === null || loops === void 0 ? void 0 : loops.length))
24
+ return react_1.default.createElement(react_1.default.Fragment, null);
25
+ var _a = loops.reduce(function (output, loop, i) {
26
+ loop.forEach(function (_a, j) {
27
+ var x = _a[0], y = _a[1];
28
+ if (!i && !j) {
29
+ output = {
30
+ xMin: x,
31
+ yMin: y,
32
+ xMax: x,
33
+ yMax: y,
34
+ };
35
+ }
36
+ else {
37
+ if (x < output.xMin)
38
+ output.xMin = x;
39
+ else if (x > output.xMax)
40
+ output.xMax = x;
41
+ if (y < output.yMin)
42
+ output.yMin = y;
43
+ else if (y > output.yMax)
44
+ output.yMax = y;
45
+ }
46
+ });
47
+ return output;
48
+ }, {
49
+ xMin: 0,
50
+ yMin: 0,
51
+ xMax: 0,
52
+ yMax: 0,
53
+ }), xMin = _a.xMin, yMin = _a.yMin, xMax = _a.xMax, yMax = _a.yMax;
54
+ var xSpan = xMax - xMin;
55
+ var ySpan = yMax - yMin;
56
+ var xCenter = xMin + xSpan / 2;
57
+ var yCenter = yMin + ySpan / 2;
58
+ var scaleFactor = (size - 2 * padding) / Math.max(xSpan, ySpan);
59
+ var translate = [
60
+ xCenter * scaleFactor - size / 2,
61
+ yCenter * scaleFactor - size / 2,
62
+ ];
63
+ return (react_1.default.createElement("svg", __assign({ width: size, height: size, fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props), loops.map(function (loop, i) {
64
+ var path = loop
65
+ .map(function (point, i) {
66
+ var x = point[0] * scaleFactor - translate[0];
67
+ var y = point[1] * scaleFactor - translate[1];
68
+ return (!i ? 'M ' : 'L ') + x + ' ' + y;
69
+ })
70
+ .join(' ') + ' Z';
71
+ return (react_1.default.createElement("path", { key: "path-".concat(i), d: path, stroke: props.color, strokeWidth: strokeWidth }));
72
+ })));
73
+ }
74
+ exports.default = SpacesLayout;
@@ -0,0 +1,177 @@
1
+ import type { IWalls, IVerticesState, ICoordinate2D, IFeature, IFeatures, ICoordinatesLine, ISpacesStateProps, IElementAddress, IFeatureName, IVertex, IFeaturesHydrated, IElementUi, IElementName, IActiveElement, IEnclosedSpace, IFeatureDoor, IWallsValidationConfig, IGuides, IAttributeDefaults, IGridToDraw, ISpacesSync } from './types';
2
+ import { IUnits, IDimensionOptions } from './types';
3
+ import type { IHydratedAttribute } from '../../types';
4
+ import { WallModes } from './constants';
5
+ export declare class SpacesState {
6
+ private _config;
7
+ private _attributesState;
8
+ private _attributeDefaults;
9
+ private _activeWallMode;
10
+ private _activeWallModeAssetId;
11
+ private _newWall;
12
+ private _activeElement;
13
+ private _selectedElement;
14
+ private _highlightedElement;
15
+ private _errorElement;
16
+ private _showDimensions;
17
+ private _angleSnappingEnabled;
18
+ private _guideSnappingEnabled;
19
+ private _guides;
20
+ private _gridSnappingEnabled;
21
+ private _zoom;
22
+ private _zoomLimits;
23
+ private _canvasDimensions;
24
+ private _translate;
25
+ private _translateLimits;
26
+ private _unit;
27
+ private _validationConfig;
28
+ private _state;
29
+ private _setPendingStatus;
30
+ constructor(config: ISpacesStateProps);
31
+ get styles(): import("./types").ISpacesStyles;
32
+ get attributeDefaults(): IAttributeDefaults;
33
+ set attributeDefaults(val: IAttributeDefaults);
34
+ get scale(): number;
35
+ get snapProximity(): number;
36
+ get gridUnitLength(): number;
37
+ get gridUnitLengthToDraw(): number;
38
+ get gridOffset(): ICoordinate2D;
39
+ get gridToDraw(): IGridToDraw;
40
+ get walls(): IWalls;
41
+ get wallsToDraw(): {
42
+ line: ICoordinatesLine;
43
+ path: undefined;
44
+ assetId: string;
45
+ connections: [elementType: IFeatureName, index: number][];
46
+ restConfiguration: string;
47
+ mode: WallModes;
48
+ }[];
49
+ set walls(walls: IWalls);
50
+ get wallCount(): number;
51
+ get wallLines(): ICoordinatesLine[];
52
+ get vertices(): IVerticesState;
53
+ get verticesToDraw(): IVerticesState;
54
+ set vertices(vertices: IVerticesState);
55
+ get verticesList(): Array<IVertex>;
56
+ get verticesListToDraw(): Array<IVertex>;
57
+ get features(): IFeatures;
58
+ get featuresToDraw(): Record<string, IFeature[] | IFeatureDoor[]>;
59
+ set features(features: IFeatures);
60
+ get getHydratedFeatures(): undefined | IFeaturesHydrated;
61
+ get featureCount(): number;
62
+ get activeElement(): IActiveElement | null;
63
+ get selectedElement(): null | IElementAddress;
64
+ set selectedElement(element: null | IElementAddress);
65
+ get showDimensions(): IDimensionOptions;
66
+ set showDimensions(val: IDimensionOptions);
67
+ get angleSnappingEnabled(): boolean;
68
+ set angleSnappingEnabled(val: boolean);
69
+ get guideSnappingEnabled(): boolean;
70
+ set guideSnappingEnabled(val: boolean);
71
+ get gridSnappingEnabled(): boolean;
72
+ set gridSnappingEnabled(val: boolean);
73
+ get guides(): IGuides | null;
74
+ set guides(val: IGuides | null);
75
+ get enclosedSpacesToDraw(): Array<IEnclosedSpace>;
76
+ get canvasDimensions(): ICoordinate2D;
77
+ get canvasWidth(): number;
78
+ get canvasHeight(): number;
79
+ set canvasDimensions(dimensions: ICoordinate2D);
80
+ get zoom(): number;
81
+ get zoomFactor(): number;
82
+ set zoomFactor(val: number);
83
+ get zoomMin(): number;
84
+ get zoomMax(): number;
85
+ set zoom(delta: number);
86
+ get unit(): IUnits;
87
+ set unit(unit: IUnits);
88
+ get translate(): ICoordinate2D;
89
+ get translateMin(): ICoordinate2D;
90
+ get translateMax(): ICoordinate2D;
91
+ set translate(position: ICoordinate2D);
92
+ get isDrawWallActive(): boolean;
93
+ get validationConfig(): IWallsValidationConfig;
94
+ set validationConfig(config: IWallsValidationConfig);
95
+ set wallMode(mode: {
96
+ value: WallModes;
97
+ assetId: string;
98
+ });
99
+ get wallMode(): {
100
+ value: WallModes;
101
+ assetId: string;
102
+ };
103
+ sync(state: Partial<ISpacesSync>): void;
104
+ private transformLengthFromCanvas;
105
+ private transformLengthToCanvas;
106
+ private transformPointToCanvas;
107
+ private transformPointFromCanvas;
108
+ private transformLineToCanvas;
109
+ private prepLineLength;
110
+ private getWall;
111
+ private addWall;
112
+ private addWalls;
113
+ private updateWall;
114
+ private getWallConnectionCount;
115
+ private getWallConnectionsHydrated;
116
+ private getWallDimensions;
117
+ private getWallDimensionsByIndex;
118
+ private getWallDetailedDimensionsByIndex;
119
+ private getDimensionToDraw;
120
+ private shiftAllFeaturesOnWall;
121
+ private addFeatureToWall;
122
+ private removeFeatureFromWall;
123
+ splitWallAtOffset(wallIndex: number, offset?: number): void;
124
+ private splitWallAtPoint;
125
+ deleteWall(index: number): void;
126
+ private getFirstVacantLocationOnWallIndex;
127
+ private getFirstVacantLocation;
128
+ getWallUiAnchorPoint(index: number): undefined | ICoordinate2D;
129
+ private getVertex;
130
+ private getWallsConnectedToVertex;
131
+ private repositionVertex;
132
+ private getFeatureType;
133
+ private setFeatureType;
134
+ private getFeature;
135
+ private updateFeature;
136
+ private repositionFeature;
137
+ addFeature(type: IFeatureName, addToWallIndex?: number, feature?: Partial<Pick<IFeature, 'assetId' | 'offset' | 'length' | 'height' | 'altitude'>>): void;
138
+ deleteFeature(type: IFeatureName, index: number): void;
139
+ private getHydratedFeature;
140
+ getFeatureUiAnchorPoint(type: IFeatureName, index: number): undefined | ICoordinate2D;
141
+ deleteElement(type: IElementName, index: number): void;
142
+ private getVertexIndexInProximity;
143
+ private getWallIndexInProximity;
144
+ private getSnapPointToVertexInProximity;
145
+ private getSnapPointToWallInProximity;
146
+ private getSnapPointToAngleInProximity;
147
+ private getSnapVertexToGuideInProximity;
148
+ private getSnapActiveVertexToGuideInProximity;
149
+ private getSnapPointToGridInProximity;
150
+ private getFeatureAtPoint;
151
+ private getElementAddressAtPoint;
152
+ getElementUiAtPoint(cursorPoint: ICoordinate2D): undefined | IElementUi;
153
+ private getSnapPointToElementInProximity;
154
+ private runValidators;
155
+ private reevaluateFeatureConnections;
156
+ private pushStateToConfigurator;
157
+ setAttributesToState(attributes?: Record<string, IHydratedAttribute>): void;
158
+ deleteAll(): void;
159
+ private resetInternalState;
160
+ highlightElementIfInProximity(canvas: HTMLCanvasElement, cursorPoint: ICoordinate2D): void;
161
+ centerSpace(canvas: HTMLCanvasElement | null, zoomToFit?: boolean): void;
162
+ showGuideAtPoint(canvas: HTMLCanvasElement, cursorPoint: ICoordinate2D): void;
163
+ startDrawNewWall(startPoint: ICoordinate2D): void;
164
+ drawNewWall(canvas: HTMLCanvasElement, endPoint: ICoordinate2D): void;
165
+ cancelDrawNewWall(canvas: HTMLCanvasElement): void;
166
+ finishDrawNewWall(canvas: HTMLCanvasElement, assetId?: string): Promise<void>;
167
+ private moveActiveVertex;
168
+ private finishMoveActiveVertex;
169
+ private moveActiveFeature;
170
+ private finishMoveActiveFeature;
171
+ selectElementIfInProximity(canvas: HTMLCanvasElement, cursorPoint: ICoordinate2D): void;
172
+ moveActiveElement(canvas: HTMLCanvasElement, moveToPoint: ICoordinate2D): void;
173
+ finishMoveActiveElement(canvas: HTMLCanvasElement): void;
174
+ cancelMoveActiveElement(canvas: HTMLCanvasElement): void;
175
+ drawSpaces(canvas: HTMLCanvasElement | null): void;
176
+ }
177
+ export default SpacesState;