@threekit-tools/treble 0.0.89 → 0.0.90

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 (140) hide show
  1. package/dist/Treble/Treble.d.ts +1 -1
  2. package/dist/Treble/Treble.js +3 -3
  3. package/dist/components/AttributeValue/index.js +2 -0
  4. package/dist/components/Wishlist/index.d.ts +1 -1
  5. package/dist/components/Zoom/index.d.ts +1 -1
  6. package/dist/components/containers/formInputContainer.d.ts +1 -1
  7. package/dist/hooks/useRoomBuilder/RoomBuilderState.d.ts +95 -0
  8. package/dist/hooks/useRoomBuilder/RoomBuilderState.js +1237 -0
  9. package/dist/hooks/useRoomBuilder/constants.d.ts +41 -0
  10. package/dist/hooks/useRoomBuilder/constants.js +48 -0
  11. package/dist/hooks/useRoomBuilder/dataHandlers.d.ts +18 -0
  12. package/dist/hooks/useRoomBuilder/dataHandlers.js +187 -0
  13. package/dist/hooks/useRoomBuilder/draw.d.ts +55 -0
  14. package/dist/hooks/useRoomBuilder/draw.js +573 -0
  15. package/dist/hooks/useRoomBuilder/findLoops.d.ts +5 -0
  16. package/dist/hooks/useRoomBuilder/findLoops.js +99 -0
  17. package/dist/hooks/useRoomBuilder/geometry.d.ts +33 -0
  18. package/dist/hooks/useRoomBuilder/geometry.js +325 -0
  19. package/dist/hooks/useRoomBuilder/index.d.ts +40 -0
  20. package/dist/hooks/useRoomBuilder/index.js +303 -0
  21. package/dist/hooks/useRoomBuilder/messaging.d.ts +8 -0
  22. package/dist/hooks/useRoomBuilder/messaging.js +18 -0
  23. package/dist/hooks/useRoomBuilder/themes.d.ts +12 -0
  24. package/dist/hooks/useRoomBuilder/themes.js +273 -0
  25. package/dist/hooks/useRoomBuilder/types.d.ts +238 -0
  26. package/dist/hooks/useRoomBuilder/types.js +36 -0
  27. package/dist/hooks/useRoomBuilder/validators.d.ts +36 -0
  28. package/dist/hooks/useRoomBuilder/validators.js +362 -0
  29. package/dist/icons/Add.d.ts +1 -1
  30. package/dist/icons/Add.js +3 -3
  31. package/dist/icons/Angle.d.ts +3 -0
  32. package/dist/icons/Angle.js +21 -0
  33. package/dist/icons/ArrowLeft.d.ts +1 -1
  34. package/dist/icons/ArrowLeft.js +3 -3
  35. package/dist/icons/ArrowRight.d.ts +1 -1
  36. package/dist/icons/ArrowRight.js +3 -3
  37. package/dist/icons/Camera.d.ts +1 -1
  38. package/dist/icons/Camera.js +3 -3
  39. package/dist/icons/CaretDown.d.ts +1 -1
  40. package/dist/icons/CaretDown.js +3 -3
  41. package/dist/icons/CaretLeft.d.ts +1 -1
  42. package/dist/icons/CaretLeft.js +3 -3
  43. package/dist/icons/CaretRight.d.ts +1 -1
  44. package/dist/icons/CaretRight.js +3 -3
  45. package/dist/icons/CaretUp.d.ts +1 -1
  46. package/dist/icons/CaretUp.js +3 -3
  47. package/dist/icons/Cart.d.ts +1 -1
  48. package/dist/icons/Cart.js +3 -3
  49. package/dist/icons/Checkmate.d.ts +1 -1
  50. package/dist/icons/Checkmate.js +3 -3
  51. package/dist/icons/Clipboard.d.ts +1 -1
  52. package/dist/icons/Clipboard.js +3 -3
  53. package/dist/icons/ColorPicker.d.ts +1 -1
  54. package/dist/icons/ColorPicker.js +3 -3
  55. package/dist/icons/Copy.d.ts +1 -1
  56. package/dist/icons/Copy.js +3 -3
  57. package/dist/icons/Cursor.d.ts +3 -0
  58. package/dist/icons/Cursor.js +21 -0
  59. package/dist/icons/Delete.d.ts +1 -1
  60. package/dist/icons/Delete.js +3 -3
  61. package/dist/icons/Door.d.ts +3 -0
  62. package/dist/icons/Door.js +22 -0
  63. package/dist/icons/DoubleCaretLeft.d.ts +1 -1
  64. package/dist/icons/DoubleCaretLeft.js +3 -3
  65. package/dist/icons/DoubleCaretRight.d.ts +1 -1
  66. package/dist/icons/DoubleCaretRight.js +3 -3
  67. package/dist/icons/Download.d.ts +1 -1
  68. package/dist/icons/Download.js +3 -3
  69. package/dist/icons/Drag.d.ts +1 -1
  70. package/dist/icons/Drag.js +3 -3
  71. package/dist/icons/Draggable.d.ts +1 -1
  72. package/dist/icons/Draggable.js +3 -3
  73. package/dist/icons/Draw.d.ts +3 -0
  74. package/dist/icons/Draw.js +21 -0
  75. package/dist/icons/Edit.d.ts +1 -1
  76. package/dist/icons/Edit.js +3 -3
  77. package/dist/icons/Heart.d.ts +1 -1
  78. package/dist/icons/Heart.js +3 -3
  79. package/dist/icons/Image.d.ts +1 -1
  80. package/dist/icons/Image.js +3 -3
  81. package/dist/icons/Info.d.ts +1 -1
  82. package/dist/icons/Info.js +3 -3
  83. package/dist/icons/Layout.d.ts +3 -0
  84. package/dist/icons/Layout.js +21 -0
  85. package/dist/icons/Mail.d.ts +1 -1
  86. package/dist/icons/Mail.js +3 -3
  87. package/dist/icons/Menu.d.ts +1 -1
  88. package/dist/icons/Menu.js +3 -3
  89. package/dist/icons/More.d.ts +1 -1
  90. package/dist/icons/More.js +3 -3
  91. package/dist/icons/NewWindow.d.ts +1 -1
  92. package/dist/icons/NewWindow.js +3 -3
  93. package/dist/icons/Opening.d.ts +3 -0
  94. package/dist/icons/Opening.js +21 -0
  95. package/dist/icons/Pause.d.ts +1 -1
  96. package/dist/icons/Pause.js +3 -3
  97. package/dist/icons/Play.d.ts +1 -1
  98. package/dist/icons/Play.js +3 -3
  99. package/dist/icons/Redo.d.ts +1 -1
  100. package/dist/icons/Redo.js +3 -3
  101. package/dist/icons/Remove.d.ts +1 -1
  102. package/dist/icons/Remove.js +3 -3
  103. package/dist/icons/Ruler.d.ts +1 -1
  104. package/dist/icons/Ruler.js +3 -3
  105. package/dist/icons/Search.d.ts +1 -1
  106. package/dist/icons/Search.js +3 -3
  107. package/dist/icons/Settings.d.ts +1 -1
  108. package/dist/icons/Settings.js +3 -3
  109. package/dist/icons/Share.d.ts +1 -1
  110. package/dist/icons/Share.js +3 -3
  111. package/dist/icons/Switch.d.ts +1 -1
  112. package/dist/icons/Switch.js +3 -3
  113. package/dist/icons/Tag.d.ts +1 -1
  114. package/dist/icons/Tag.js +3 -3
  115. package/dist/icons/TrashCan.d.ts +3 -0
  116. package/dist/icons/TrashCan.js +21 -0
  117. package/dist/icons/TrashCanAlt.d.ts +3 -0
  118. package/dist/icons/TrashCanAlt.js +21 -0
  119. package/dist/icons/Undo.d.ts +1 -1
  120. package/dist/icons/Undo.js +3 -3
  121. package/dist/icons/Wall.d.ts +3 -0
  122. package/dist/icons/Wall.js +21 -0
  123. package/dist/icons/Window.d.ts +3 -0
  124. package/dist/icons/Window.js +22 -0
  125. package/dist/icons/Wishlist.d.ts +1 -1
  126. package/dist/icons/Wishlist.js +3 -3
  127. package/dist/icons/ZoomIn.d.ts +1 -1
  128. package/dist/icons/ZoomIn.js +3 -3
  129. package/dist/icons/ZoomOut.d.ts +1 -1
  130. package/dist/icons/ZoomOut.js +3 -3
  131. package/dist/icons/index.d.ts +2 -6
  132. package/dist/icons/index.js +20 -0
  133. package/dist/icons/types.d.ts +7 -0
  134. package/dist/icons/types.js +2 -0
  135. package/dist/index.d.ts +12 -1
  136. package/dist/index.js +25 -2
  137. package/dist/store/treble.js +1 -0
  138. package/dist/types.d.ts +42 -7
  139. package/dist/types.js +1 -0
  140. package/package.json +1 -1
@@ -10,9 +10,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.ZoomOut = 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 stroke: ", ";\n }\n"], ["\n .tk-icon {\n stroke: ", ";\n }\n"])), function (props) { return props.theme.textColor; });
14
- var ZoomOut = function () {
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" },
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 ZoomOut = 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
16
  react_1.default.createElement("path", { d: "M16 8.00002L8 8.00002", className: "tk-icon", strokeWidth: "2" }),
17
17
  react_1.default.createElement("path", { d: "M7.75737 12.2427C10.1005 14.5858 13.8995 14.5858 16.2427 12.2427C18.5858 9.89951 18.5858 6.10052 16.2427 3.75737C13.8995 1.41423 10.1005 1.41423 7.75737 3.75737C5.41422 6.10052 5.41422 9.89951 7.75737 12.2427ZM7.75737 12.2427L5.9896 14.0104M5.9896 14.0104C6.34316 14.364 6.34316 14.364 5.9896 14.7175C5.63605 15.0711 3.51473 17.1924 3.16118 17.546C2.80762 17.8995 2.80762 17.8995 2.45407 17.546C2.10052 17.1924 2.10052 17.1924 2.45407 16.8389C2.80762 16.4853 4.92894 14.364 5.2825 14.0104C5.63605 13.6569 5.63605 13.6569 5.9896 14.0104Z", className: "tk-icon", strokeWidth: "2" })));
18
18
  };
@@ -1,9 +1,5 @@
1
- import React from 'react';
2
- import SpinnerIcon from './Spinner';
3
- export interface IIcon extends React.FC {
4
- iconName: string;
5
- }
1
+ import Spinner from './Spinner';
6
2
  declare const _default: {
7
- [x: string]: IIcon | typeof SpinnerIcon;
3
+ [x: string]: import("./types").IIcon | typeof Spinner;
8
4
  };
9
5
  export default _default;
@@ -46,6 +46,16 @@ var Wishlist_1 = __importDefault(require("./Wishlist"));
46
46
  var ZoomIn_1 = __importDefault(require("./ZoomIn"));
47
47
  var ZoomOut_1 = __importDefault(require("./ZoomOut"));
48
48
  var Spinner_1 = __importDefault(require("./Spinner"));
49
+ var Angle_1 = __importDefault(require("./Angle"));
50
+ var Cursor_1 = __importDefault(require("./Cursor"));
51
+ var Draw_1 = __importDefault(require("./Draw"));
52
+ var Door_1 = __importDefault(require("./Door"));
53
+ var Layout_1 = __importDefault(require("./Layout"));
54
+ var Opening_1 = __importDefault(require("./Opening"));
55
+ var Window_1 = __importDefault(require("./Window"));
56
+ var Wall_1 = __importDefault(require("./Wall"));
57
+ var TrashCan_1 = __importDefault(require("./TrashCan"));
58
+ var TrashCanAlt_1 = __importDefault(require("./TrashCanAlt"));
49
59
  exports.default = (_a = {},
50
60
  _a[Add_1.default.iconName] = Add_1.default,
51
61
  _a[ArrowLeft_1.default.iconName] = ArrowLeft_1.default,
@@ -89,4 +99,14 @@ exports.default = (_a = {},
89
99
  _a[ZoomIn_1.default.iconName] = ZoomIn_1.default,
90
100
  _a[ZoomOut_1.default.iconName] = ZoomOut_1.default,
91
101
  _a[Spinner_1.default.iconName] = Spinner_1.default,
102
+ _a[Angle_1.default.iconName] = Angle_1.default,
103
+ _a[Cursor_1.default.iconName] = Cursor_1.default,
104
+ _a[Draw_1.default.iconName] = Draw_1.default,
105
+ _a[Door_1.default.iconName] = Door_1.default,
106
+ _a[Layout_1.default.iconName] = Layout_1.default,
107
+ _a[Opening_1.default.iconName] = Opening_1.default,
108
+ _a[Window_1.default.iconName] = Window_1.default,
109
+ _a[Wall_1.default.iconName] = Wall_1.default,
110
+ _a[TrashCan_1.default.iconName] = TrashCan_1.default,
111
+ _a[TrashCanAlt_1.default.iconName] = TrashCanAlt_1.default,
92
112
  _a);
@@ -0,0 +1,7 @@
1
+ import React from "react";
2
+ export interface IIconProps {
3
+ color?: string;
4
+ }
5
+ export interface IIcon extends React.FC<IIconProps> {
6
+ iconName: string;
7
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/dist/index.d.ts CHANGED
@@ -16,6 +16,7 @@ import useProductCache from './hooks/useProductCache';
16
16
  import useNestedConfigurator from './hooks/useNestedConfigurator';
17
17
  import useLoadingProgress from './hooks/useLoadingProgress';
18
18
  import usePlayer from './hooks/usePlayer';
19
+ import useRoomBuilder from './hooks/useRoomBuilder';
19
20
  import ThreekitProvider from './components/ThreekitProvider';
20
21
  import Player from './components/Player';
21
22
  import Button from './components/Button';
@@ -96,4 +97,14 @@ import WishlistIcon from './icons/Wishlist';
96
97
  import ZoomInIcon from './icons/ZoomIn';
97
98
  import ZoomOutIcon from './icons/ZoomOut';
98
99
  import SpinnerIcon from './icons/Spinner';
99
- export { useAttribute, useConfigurator, useConfigurationLoader, useFirstPlayerInteraction, useMetadata, useName, usePlayerLoadingStatus, usePrice, useThreekitInitStatus, useZoom, useSnapshot, useWishlist, useShare, usePlayerPortal, useProductCache, useNestedConfigurator, useLoadingProgress, usePlayer, 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, };
100
+ import AngleIcon from './icons/Angle';
101
+ import TrashCanIcon from './icons/TrashCan';
102
+ import TrashCanAltIcon from './icons/TrashCanAlt';
103
+ import CursorIcon from './icons/Cursor';
104
+ import WindowIcon from './icons/Window';
105
+ import DrawIcon from './icons/Draw';
106
+ import DoorIcon from './icons/Door';
107
+ import OpeningIcon from './icons/Opening';
108
+ import WallIcon from './icons/Wall';
109
+ import LayoutIcon from './icons/Layout';
110
+ export { useAttribute, useConfigurator, useConfigurationLoader, useFirstPlayerInteraction, useMetadata, useName, usePlayerLoadingStatus, usePrice, useThreekitInitStatus, useZoom, useSnapshot, useWishlist, useShare, usePlayerPortal, useProductCache, useNestedConfigurator, useLoadingProgress, usePlayer, useRoomBuilder, 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, };
package/dist/index.js CHANGED
@@ -3,8 +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.TrebleApp = exports.Share = exports.Wishlist = 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.usePlayer = exports.useLoadingProgress = exports.useNestedConfigurator = exports.useProductCache = exports.usePlayerPortal = exports.useShare = exports.useWishlist = exports.useSnapshot = exports.useZoom = exports.useThreekitInitStatus = exports.usePrice = exports.usePlayerLoadingStatus = exports.useName = exports.useMetadata = exports.useFirstPlayerInteraction = exports.useConfigurationLoader = exports.useConfigurator = exports.useAttribute = void 0;
7
- exports.SpinnerIcon = 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 = void 0;
6
+ exports.Share = exports.Wishlist = 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.useRoomBuilder = exports.usePlayer = exports.useLoadingProgress = exports.useNestedConfigurator = exports.useProductCache = exports.usePlayerPortal = exports.useShare = exports.useWishlist = exports.useSnapshot = exports.useZoom = exports.useThreekitInitStatus = exports.usePrice = exports.usePlayerLoadingStatus = exports.useName = exports.useMetadata = exports.useFirstPlayerInteraction = exports.useConfigurationLoader = exports.useConfigurator = exports.useAttribute = void 0;
7
+ exports.AngleIcon = exports.SpinnerIcon = 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 = void 0;
8
+ exports.LayoutIcon = exports.WallIcon = exports.OpeningIcon = exports.DoorIcon = exports.DrawIcon = exports.WindowIcon = exports.CursorIcon = exports.TrashCanAltIcon = exports.TrashCanIcon = void 0;
8
9
  var useAttribute_1 = __importDefault(require("./hooks/useAttribute"));
9
10
  exports.useAttribute = useAttribute_1.default;
10
11
  var useConfigurator_1 = __importDefault(require("./hooks/useConfigurator"));
@@ -41,6 +42,8 @@ var useLoadingProgress_1 = __importDefault(require("./hooks/useLoadingProgress")
41
42
  exports.useLoadingProgress = useLoadingProgress_1.default;
42
43
  var usePlayer_1 = __importDefault(require("./hooks/usePlayer"));
43
44
  exports.usePlayer = usePlayer_1.default;
45
+ var useRoomBuilder_1 = __importDefault(require("./hooks/useRoomBuilder"));
46
+ exports.useRoomBuilder = useRoomBuilder_1.default;
44
47
  var ThreekitProvider_1 = __importDefault(require("./components/ThreekitProvider"));
45
48
  exports.ThreekitProvider = ThreekitProvider_1.default;
46
49
  var Player_1 = __importDefault(require("./components/Player"));
@@ -201,3 +204,23 @@ var ZoomOut_1 = __importDefault(require("./icons/ZoomOut"));
201
204
  exports.ZoomOutIcon = ZoomOut_1.default;
202
205
  var Spinner_1 = __importDefault(require("./icons/Spinner"));
203
206
  exports.SpinnerIcon = Spinner_1.default;
207
+ var Angle_1 = __importDefault(require("./icons/Angle"));
208
+ exports.AngleIcon = Angle_1.default;
209
+ var TrashCan_1 = __importDefault(require("./icons/TrashCan"));
210
+ exports.TrashCanIcon = TrashCan_1.default;
211
+ var TrashCanAlt_1 = __importDefault(require("./icons/TrashCanAlt"));
212
+ exports.TrashCanAltIcon = TrashCanAlt_1.default;
213
+ var Cursor_1 = __importDefault(require("./icons/Cursor"));
214
+ exports.CursorIcon = Cursor_1.default;
215
+ var Window_1 = __importDefault(require("./icons/Window"));
216
+ exports.WindowIcon = Window_1.default;
217
+ var Draw_1 = __importDefault(require("./icons/Draw"));
218
+ exports.DrawIcon = Draw_1.default;
219
+ var Door_1 = __importDefault(require("./icons/Door"));
220
+ exports.DoorIcon = Door_1.default;
221
+ var Opening_1 = __importDefault(require("./icons/Opening"));
222
+ exports.OpeningIcon = Opening_1.default;
223
+ var Wall_1 = __importDefault(require("./icons/Wall"));
224
+ exports.WallIcon = Wall_1.default;
225
+ var Layout_1 = __importDefault(require("./icons/Layout"));
226
+ exports.LayoutIcon = Layout_1.default;
@@ -289,6 +289,7 @@ var launch = function (launchConfig) {
289
289
  }
290
290
  else {
291
291
  stageId = conf.stageId;
292
+ initialConfiguration = conf.initialConfiguration;
292
293
  if (conf.configurationId)
293
294
  configurationId = conf.configurationId;
294
295
  else if ((0, utils_1.isUuid)(conf.assetId))
package/dist/types.d.ts CHANGED
@@ -19,7 +19,8 @@ export declare enum ATTRIBUTE_TYPES {
19
19
  ASSET = "Asset",
20
20
  COLOR = "Color",
21
21
  NUMBER = "Number",
22
- BOOLEAN = "Boolean"
22
+ BOOLEAN = "Boolean",
23
+ ARRAY = "Array"
23
24
  }
24
25
  export declare enum ASSET_TYPES {
25
26
  UPLOAD = "upload",
@@ -86,15 +87,17 @@ export interface ISceneResult {
86
87
  }
87
88
  export interface IConfigurationAsset {
88
89
  assetId: string;
89
- configuration?: string;
90
+ configuration?: string | IConfiguration;
90
91
  type?: string;
91
92
  }
93
+ export interface IConfigurationArray extends Array<IConfigurationAsset> {
94
+ }
92
95
  export interface IConfigurationColor {
93
96
  r: number;
94
97
  g: number;
95
98
  b: number;
96
99
  }
97
- export declare type IConfigurationAttribute = IConfigurationAsset | IConfigurationColor | string | number | boolean | undefined;
100
+ export declare type IConfigurationAttribute = IConfigurationAsset | IConfigurationArray | IConfigurationColor | string | number | boolean | undefined;
98
101
  export declare type IConfiguration = Record<string, IConfigurationAttribute>;
99
102
  export declare type ISetConfiguration = Record<string, IConfigurationAttribute>;
100
103
  interface IDisplayAttributeConfig {
@@ -126,7 +129,7 @@ export interface IHydratedAttributeAssetValue extends IDisplayAttributeAssetValu
126
129
  }
127
130
  export interface IAttributeAssetBase<V> extends IAttributeBase<ATTRIBUTE_TYPES.ASSET, IConfigurationAsset> {
128
131
  assetType: ASSET_TYPES;
129
- blacklist: [];
132
+ blacklist: Array<string>;
130
133
  defaultValue: IConfigurationAsset;
131
134
  hiddenValues?: Array<string>;
132
135
  disabledValues?: Array<string>;
@@ -135,6 +138,38 @@ export interface IAttributeAssetBase<V> extends IAttributeBase<ATTRIBUTE_TYPES.A
135
138
  export declare type IDisplayAttributeAsset = IAttributeAssetBase<IDisplayAttributeAssetValue>;
136
139
  export declare type IHydratedAttributeAsset = IAttributeAssetBase<IHydratedAttributeAssetValue>;
137
140
  export declare type IAttributeAsset = IAttributeAssetBase<IConfigurationAssetValue>;
141
+ export interface IConfigurationArrayValue {
142
+ assetId: string;
143
+ name: string;
144
+ configuration?: Record<string, IThreekitDisplayAttribute>;
145
+ }
146
+ export interface IDisplayAttributeArrayValue extends IConfigurationArrayValue {
147
+ name: string;
148
+ type: string;
149
+ enabled: boolean;
150
+ visible: boolean;
151
+ metadata: IMetadata;
152
+ tags: Array<string>;
153
+ label: string;
154
+ }
155
+ export interface IHydratedAttributeArrayValue extends IDisplayAttributeArrayValue {
156
+ label: string;
157
+ handleSelect: () => Promise<void>;
158
+ selected: boolean;
159
+ }
160
+ export interface IAttributeArrayBase<V> extends IAttributeBase<ATTRIBUTE_TYPES.ARRAY, IConfigurationArray> {
161
+ blacklist: Array<string>;
162
+ hiddenValues?: Array<string>;
163
+ disabledValues?: Array<string>;
164
+ values: Array<V>;
165
+ of: {
166
+ type: ATTRIBUTE_TYPES.ASSET;
167
+ assetType: ASSET_TYPES;
168
+ };
169
+ }
170
+ export declare type IDisplayAttributeArray = IAttributeArrayBase<IDisplayAttributeArrayValue>;
171
+ export declare type IHydratedAttributeArray = IAttributeArrayBase<IHydratedAttributeArrayValue>;
172
+ export declare type IAttributeArray = IAttributeArrayBase<Pick<IConfigurationArrayValue, 'assetId'>>;
138
173
  export interface IDisplayAttributeStringValue {
139
174
  label: string;
140
175
  value: string;
@@ -166,9 +201,9 @@ export interface IAttributeNumber extends IAttributeBase<ATTRIBUTE_TYPES.NUMBER,
166
201
  export interface IAttributeBoolean extends IAttributeBase<ATTRIBUTE_TYPES.BOOLEAN, boolean> {
167
202
  defaultValue: boolean;
168
203
  }
169
- export declare type IThreekitAttribute = IAttributeAsset | IAttributeColor | IAttributeString | IAttributeNumber | IAttributeBoolean;
170
- export declare type IThreekitDisplayAttribute = IDisplayAttributeAsset | IDisplayAttributeString | IAttributeColor | IAttributeNumber | IAttributeBoolean;
171
- export declare type IHydratedAttribute = IHydratedAttributeAsset | IHydratedAttributeString | IAttributeColor | IAttributeNumber | IAttributeBoolean;
204
+ export declare type IThreekitAttribute = IAttributeAsset | IAttributeArray | IAttributeColor | IAttributeString | IAttributeNumber | IAttributeBoolean;
205
+ export declare type IThreekitDisplayAttribute = IDisplayAttributeAsset | IDisplayAttributeArray | IDisplayAttributeString | IAttributeColor | IAttributeNumber | IAttributeBoolean;
206
+ export declare type IHydratedAttribute = IHydratedAttributeAsset | IHydratedAttributeArray | IHydratedAttributeString | IAttributeColor | IAttributeNumber | IAttributeBoolean;
172
207
  export interface ICoordinates {
173
208
  x: number;
174
209
  y: number;
package/dist/types.js CHANGED
@@ -24,6 +24,7 @@ var ATTRIBUTE_TYPES;
24
24
  ATTRIBUTE_TYPES["COLOR"] = "Color";
25
25
  ATTRIBUTE_TYPES["NUMBER"] = "Number";
26
26
  ATTRIBUTE_TYPES["BOOLEAN"] = "Boolean";
27
+ ATTRIBUTE_TYPES["ARRAY"] = "Array";
27
28
  })(ATTRIBUTE_TYPES = exports.ATTRIBUTE_TYPES || (exports.ATTRIBUTE_TYPES = {}));
28
29
  var ASSET_TYPES;
29
30
  (function (ASSET_TYPES) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@threekit-tools/treble",
3
- "version": "0.0.89",
3
+ "version": "0.0.90",
4
4
  "author": "Amaan Saeed",
5
5
  "license": "MIT",
6
6
  "files": [