@threekit-tools/treble 0.0.83 → 0.0.85-next-2

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 (78) hide show
  1. package/dist/Treble/Treble.d.ts +9 -3
  2. package/dist/Treble/Treble.js +37 -7
  3. package/dist/Treble/index.d.ts +2 -2
  4. package/dist/Treble/index.js +2 -2
  5. package/dist/Treble/{Snapshots.d.ts → snapshots.d.ts} +4 -9
  6. package/dist/Treble/snapshots.js +247 -0
  7. package/dist/Treble/{Wishlist.d.ts → wishlist.d.ts} +2 -6
  8. package/dist/Treble/wishlist.js +135 -0
  9. package/dist/api/orders.d.ts +5 -7
  10. package/dist/components/AttributeValue/index.js +2 -2
  11. package/dist/components/AwaitThreekitLoad/index.d.ts +3 -2
  12. package/dist/components/AwaitThreekitLoad/index.js +7 -2
  13. package/dist/components/Cards/index.d.ts +2 -1
  14. package/dist/components/Cards/index.js +3 -3
  15. package/dist/components/DraggableHint/draggableIndicator.styles.d.ts +5 -0
  16. package/dist/components/DraggableHint/draggableIndicator.styles.js +35 -0
  17. package/dist/components/DraggableHint/index.d.ts +8 -0
  18. package/dist/components/DraggableHint/index.js +49 -0
  19. package/dist/components/Dropdown/index.d.ts +2 -1
  20. package/dist/components/Dropdown/index.js +3 -3
  21. package/dist/components/FlatForm/index.js +5 -3
  22. package/dist/components/Player/index.d.ts +1 -1
  23. package/dist/components/PlayerLoadingCircular/index.d.ts +6 -0
  24. package/dist/components/PlayerLoadingCircular/index.js +18 -0
  25. package/dist/components/PlayerLoadingCircular/playerLoadingCircular.styles.d.ts +7 -0
  26. package/dist/components/PlayerLoadingCircular/playerLoadingCircular.styles.js +17 -0
  27. package/dist/components/PlayerLoadingSpinner/index.d.ts +7 -0
  28. package/dist/components/PlayerLoadingSpinner/index.js +17 -0
  29. package/dist/components/PlayerLoadingSpinner/playerLoadingSpinner.styles.d.ts +4 -0
  30. package/dist/components/PlayerLoadingSpinner/playerLoadingSpinner.styles.js +35 -0
  31. package/dist/components/Share/index.d.ts +2 -0
  32. package/dist/components/Share/index.js +139 -9
  33. package/dist/components/Share/share.styles.d.ts +9 -0
  34. package/dist/components/Share/share.styles.js +23 -0
  35. package/dist/components/Skeleton/index.d.ts +18 -0
  36. package/dist/components/Skeleton/index.js +73 -0
  37. package/dist/components/Skeleton/skeleton.styles.d.ts +14 -0
  38. package/dist/components/Skeleton/skeleton.styles.js +43 -0
  39. package/dist/components/Strips/index.d.ts +2 -1
  40. package/dist/components/Strips/index.js +3 -3
  41. package/dist/components/Swatch/index.d.ts +2 -1
  42. package/dist/components/Swatch/index.js +3 -3
  43. package/dist/components/Switch/index.d.ts +2 -1
  44. package/dist/components/Switch/index.js +2 -2
  45. package/dist/components/TextInput/index.d.ts +2 -1
  46. package/dist/components/TextInput/index.js +2 -2
  47. package/dist/components/Tiles/index.d.ts +2 -1
  48. package/dist/components/Tiles/index.js +3 -3
  49. package/dist/components/TilesGroup/index.d.ts +2 -1
  50. package/dist/components/TilesGroup/index.js +3 -3
  51. package/dist/components/Upload/index.d.ts +2 -1
  52. package/dist/components/Upload/index.js +2 -2
  53. package/dist/components/UploadArea/index.d.ts +2 -1
  54. package/dist/components/UploadArea/index.js +2 -2
  55. package/dist/components/formComponents.d.ts +12 -0
  56. package/dist/components/formComponents.js +5 -5
  57. package/dist/constants.d.ts +0 -22
  58. package/dist/constants.js +1 -23
  59. package/dist/hooks/useFirstPlayerInteraction/index.d.ts +6 -0
  60. package/dist/hooks/useFirstPlayerInteraction/index.js +9 -0
  61. package/dist/hooks/useLoadingProgress/index.d.ts +1 -1
  62. package/dist/hooks/useSingleAnimation/index.js +15 -14
  63. package/dist/http/orders.d.ts +6 -8
  64. package/dist/icons/Draggable.d.ts +3 -0
  65. package/dist/icons/Draggable.js +23 -0
  66. package/dist/icons/index.js +2 -0
  67. package/dist/index.d.ts +6 -1
  68. package/dist/index.js +12 -2
  69. package/dist/store/product.js +3 -1
  70. package/dist/store/treble.d.ts +5 -2
  71. package/dist/store/treble.js +30 -3
  72. package/dist/types.d.ts +71 -24
  73. package/dist/types.js +54 -0
  74. package/dist/utils.d.ts +2 -2
  75. package/dist/utils.js +5 -4
  76. package/package.json +3 -1
  77. package/dist/Treble/Snapshots.js +0 -250
  78. package/dist/Treble/Wishlist.js +0 -136
@@ -1,19 +1,17 @@
1
1
  import { IMultiPageResponse } from './request';
2
2
  export declare type STATUSES = 'List';
3
- interface ICartItem {
3
+ export interface ICartItem {
4
4
  count: number;
5
- metadata: null | Record<string, string>;
5
+ metadata?: null | Record<string, string>;
6
6
  configurationId: string;
7
7
  }
8
- export interface ICart {
9
- cart: Array<ICartItem>;
10
- }
11
- interface IOrderShared extends ICart {
12
- name: string;
8
+ interface IOrderShared {
9
+ name?: string;
13
10
  orgId: string;
14
11
  platform: Record<string, any>;
15
12
  metadata: Record<string, string>;
16
13
  status: STATUSES;
14
+ cart: Array<ICartItem>;
17
15
  }
18
16
  interface IOrderRequest extends IOrderShared {
19
17
  }
@@ -30,7 +28,7 @@ interface IOrdersResponse extends IMultiPageResponse {
30
28
  orders: Array<IOrderResponse>;
31
29
  }
32
30
  export declare const createOrder: (data: IOrderRequest) => Promise<import("axios").AxiosResponse<IOrderResponse>>;
33
- export declare const editOrderCart: (orderId: string, data: ICart) => Promise<import("axios").AxiosResponse<IOrderResponse>>;
31
+ export declare const editOrderCart: (orderId: string, data: Array<ICartItem>) => Promise<import("axios").AxiosResponse<IOrderResponse>>;
34
32
  export declare const getOrder: (orderId: string) => Promise<import("axios").AxiosResponse<IOrderResponse>>;
35
33
  export declare const fetchOrders: () => Promise<import("axios").AxiosResponse<IOrdersResponse>>;
36
34
  export {};
@@ -0,0 +1,3 @@
1
+ import { IIcon } from './index';
2
+ export declare const Draggable: IIcon;
3
+ export default Draggable;
@@ -0,0 +1,23 @@
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.Draggable = 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 fill: ", ";\n }\n"], ["\n .tk-icon {\n fill: ", ";\n }\n"])), function (props) { return props.theme.textColor; });
14
+ var Draggable = function () {
15
+ return (react_1.default.createElement(SVG, { width: "38", height: "40", viewBox: "0 0 38 40", fill: "none", xmlns: "http://www.w3.org/2000/svg" },
16
+ react_1.default.createElement("path", { d: "M27.9815 5.45671L30.0862 8.65278L33.828 7.40553L36.9461 8.65278L36.7122 29.9339L33.1264 35.5466L27.5138 38.5867L14.1838 38.9765L7.47985 36.7938L3.66015 34.3773L2.33495 31.8048L1.63337 29.5442L1.0877 16.2922L3.66015 12.0827L7.47985 9.82208L8.57119 1.87087L12.6247 0.701577L15.587 4.13151L18.1594 3.35198H20.8098L22.7586 6.70396L25.0972 5.45671H27.9815Z", fill: "#8C8C8C" }),
17
+ react_1.default.createElement("path", { d: "M33.96 24.7661C33.7703 28.3711 32.751 31.153 30.8585 33.1273C28.966 35.1017 25.8767 35.8779 21.8818 36.2584C21.5389 36.291 21.2874 36.5954 21.3201 36.9383C21.3527 37.2812 21.6571 37.5327 22 37.5C26.1901 37.1009 29.5979 36.2449 31.759 33.9904C33.9201 31.7357 35.0055 28.6321 35.2055 24.8316C35.2236 24.4877 34.9595 24.1942 34.6156 24.1761C34.2716 24.158 33.9781 24.4221 33.96 24.7661Z", className: "tk-icon" }),
18
+ react_1.default.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M7.22391 9.36853C5.44399 9.98874 4.1305 10.6237 3.10979 11.513C2.03569 12.4487 1.33529 13.622 0.715487 15.2188L0.69783 15.2643L0.687463 15.312L1.29685 15.4445C0.687463 15.312 0.68725 15.313 0.68725 15.313L0.687032 15.314L0.686578 15.3162L0.685604 15.3208C0.684925 15.3242 0.684185 15.3279 0.683386 15.332C0.681792 15.3403 0.679952 15.3503 0.67789 15.3624C0.673775 15.3864 0.668707 15.4188 0.662907 15.4616C0.651334 15.5469 0.636567 15.6753 0.620646 15.8632C0.588839 16.2385 0.551819 16.8582 0.527256 17.8554C0.478135 19.8497 0.478465 23.3704 0.673545 29.4959C0.781702 32.892 3.31916 35.5153 6.78326 37.2629C10.2666 39.0203 14.836 39.9799 19.3695 39.9997C23.8999 40.0195 28.4686 39.1009 31.9279 37.0266C35.4133 34.9366 37.7789 31.6612 37.7789 27.0595V10.8453C37.7593 9.50257 37.2334 8.45356 36.4198 7.74523C35.6029 7.0341 34.5338 6.69847 33.4881 6.70404C32.4425 6.7096 31.3762 7.05644 30.5622 7.76798C30.498 7.82408 30.4356 7.88228 30.375 7.94255C30.2006 6.9769 29.7369 6.20175 29.0922 5.6405C28.2753 4.92937 27.2062 4.59374 26.1605 4.59931C25.1149 4.60487 24.0486 4.95171 23.2346 5.66325C23.1816 5.70954 23.1299 5.75726 23.0794 5.80639C22.936 4.7462 22.4538 3.90185 21.7646 3.30191C20.9478 2.59078 19.8787 2.25515 18.833 2.26072C17.7873 2.26628 16.721 2.61312 15.907 3.32466C15.8506 3.37394 15.7956 3.42484 15.7421 3.47733C15.5875 2.44918 15.1113 1.62824 14.437 1.04126C13.6202 0.330136 12.5511 -0.00549506 11.5054 6.80095e-05C10.4597 0.00563089 9.39343 0.352475 8.57942 1.06401C7.81729 1.7302 7.30554 2.69185 7.23077 3.90742L7.22487 3.90742L7.22485 4.02731C7.22248 4.09063 7.22129 4.15461 7.22129 4.21926H7.22481L7.22391 9.36853ZM9.40027 2.00307C8.88313 2.45511 8.51195 3.1253 8.47209 4.05205L8.4686 24.0195C8.46854 24.364 8.18928 24.6431 7.84487 24.643C7.50045 24.643 7.22129 24.3637 7.22135 24.0193L7.22368 10.693C5.72634 11.2416 4.70404 11.7782 3.92908 12.4534C3.07383 13.1985 2.47294 14.1538 1.90141 15.6107C1.90061 15.6163 1.89975 15.6225 1.89883 15.6293C1.89061 15.6899 1.87797 15.7971 1.86344 15.9685C1.83434 16.3118 1.79828 16.9054 1.77413 17.8861C1.7258 19.848 1.72547 23.343 1.92016 29.4562C2.00689 32.1794 4.04917 34.4866 7.34505 36.1494C10.6217 37.8025 14.9925 38.7333 19.3749 38.7524C23.7604 38.7716 28.0831 37.8778 31.2865 35.957C34.4635 34.0519 36.5316 31.1496 36.5316 27.0595L36.5316 10.9232C36.5316 9.88678 36.1454 9.16004 35.6008 8.68594C35.0437 8.20097 34.2809 7.94708 33.4948 7.95127C32.7085 7.95545 31.9429 8.21761 31.383 8.70704C30.862 9.16245 30.4892 9.83928 30.454 10.7768L30.4515 16.6922C30.4514 17.0366 30.172 17.3157 29.8276 17.3155C29.4832 17.3154 29.2041 17.0361 29.2043 16.6916L29.2067 10.9232H29.204C29.204 10.8667 29.2049 10.8106 29.2068 10.755L29.2076 8.8185H29.204C29.204 7.78205 28.8178 7.05531 28.2732 6.58121C27.7162 6.09624 26.9534 5.84235 26.1672 5.84654C25.3809 5.85072 24.6153 6.11288 24.0554 6.60231C23.5343 7.05787 23.1613 7.73502 23.1264 8.67305L23.1237 15.4449C23.1236 15.7893 22.8443 16.0684 22.4999 16.0683C22.1554 16.0681 21.8763 15.7888 21.8765 15.4444L21.8791 8.8185H21.8764C21.8764 8.76232 21.8773 8.70664 21.8791 8.65146L21.88 6.47991H21.8764C21.8764 5.44346 21.4903 4.71672 20.9457 4.24262C20.3886 3.75765 19.6258 3.50376 18.8396 3.50795C18.0534 3.51213 17.2878 3.77429 16.7278 4.26372C16.2071 4.71888 15.8344 5.39523 15.7989 6.33197L15.7963 13.8858C15.7961 14.2302 15.5168 14.5093 15.1724 14.5092C14.828 14.5091 14.5489 14.2298 14.549 13.8854L14.5516 6.47991H14.5489C14.5489 6.42277 14.5498 6.36614 14.5517 6.31003L14.5524 4.21926H14.5489C14.5489 3.18282 14.1627 2.45608 13.6181 1.98197C13.061 1.497 12.2982 1.24312 11.512 1.2473C10.7258 1.25148 9.96018 1.51365 9.40027 2.00307Z", className: "tk-icon" })));
19
+ };
20
+ exports.Draggable = Draggable;
21
+ exports.Draggable.iconName = 'draggable';
22
+ exports.default = exports.Draggable;
23
+ var templateObject_1;
@@ -22,6 +22,7 @@ var DoubleCaretLeft_1 = __importDefault(require("./DoubleCaretLeft"));
22
22
  var DoubleCaretRight_1 = __importDefault(require("./DoubleCaretRight"));
23
23
  var Download_1 = __importDefault(require("./Download"));
24
24
  var Drag_1 = __importDefault(require("./Drag"));
25
+ var Draggable_1 = __importDefault(require("./Draggable"));
25
26
  var Edit_1 = __importDefault(require("./Edit"));
26
27
  var Heart_1 = __importDefault(require("./Heart"));
27
28
  var Image_1 = __importDefault(require("./Image"));
@@ -64,6 +65,7 @@ exports.default = (_a = {},
64
65
  _a[DoubleCaretRight_1.default.iconName] = DoubleCaretRight_1.default,
65
66
  _a[Download_1.default.iconName] = Download_1.default,
66
67
  _a[Drag_1.default.iconName] = Drag_1.default,
68
+ _a[Draggable_1.default.iconName] = Draggable_1.default,
67
69
  _a[Edit_1.default.iconName] = Edit_1.default,
68
70
  _a[Heart_1.default.iconName] = Heart_1.default,
69
71
  _a[Image_1.default.iconName] = Image_1.default,
package/dist/index.d.ts CHANGED
@@ -31,6 +31,7 @@ import ProductDescription from './components/ProductDescription';
31
31
  import AttributeTitle from './components/AttributeTitle';
32
32
  import AttributeValue from './components/AttributeValue';
33
33
  import TotalPrice from './components/TotalPrice';
34
+ import Skeleton from './components/Skeleton';
34
35
  import message from './components/message';
35
36
  import Modal from './components/Modal';
36
37
  import Drawer from './components/Drawer';
@@ -46,6 +47,9 @@ import Wishlist from './components/Wishlist';
46
47
  import Share from './components/Share';
47
48
  import TrebleApp from './components/TrebleApp';
48
49
  import ProductLayout from './components/ProductLayout';
50
+ import PlayerLoadingCircular from './components/PlayerLoadingCircular';
51
+ import PlayerLoadingSpinner from './components/PlayerLoadingSpinner';
52
+ import DraggableHint from './components/DraggableHint';
49
53
  import AddIcon from './icons/Add';
50
54
  import ArrowLeftIcon from './icons/ArrowLeft';
51
55
  import ArrowRightIcon from './icons/ArrowRight';
@@ -63,6 +67,7 @@ import DeleteIcon from './icons/Delete';
63
67
  import DoubleCaretLeftIcon from './icons/DoubleCaretLeft';
64
68
  import DoubleCaretRightIcon from './icons/DoubleCaretRight';
65
69
  import DownloadIcon from './icons/Download';
70
+ import DraggableIcon from './icons/Draggable';
66
71
  import DragIcon from './icons/Drag';
67
72
  import EditIcon from './icons/Edit';
68
73
  import HeartIcon from './icons/Heart';
@@ -87,4 +92,4 @@ import WishlistIcon from './icons/Wishlist';
87
92
  import ZoomInIcon from './icons/ZoomIn';
88
93
  import ZoomOutIcon from './icons/ZoomOut';
89
94
  import SpinnerIcon from './icons/Spinner';
90
- export { useAttribute, useConfigurator, useConfigurationLoader, useMetadata, useName, usePlayerLoadingStatus, usePrice, useThreekitInitStatus, useZoom, useSnapshot, useWishlist, useShare, usePlayerPortal, useProductCache, useNestedConfigurator, useLoadingProgress, usePlayer, ThreekitProvider, Player, Button, Cards, Dropdown, Strips, Swatch, Tiles, TilesGroup, Upload, Switch, ProductName, ProductDescription, AttributeTitle, AttributeValue, TotalPrice, message, Modal, Drawer, Accordion, Tabs, PortalToArOverlay, PortalToElement, AwaitThreekitLoad, FlatForm, Zoom, Snapshots, Wishlist, Share, TrebleApp, ProductLayout, AddIcon, ArrowLeftIcon, ArrowRightIcon, CameraIcon, CaretDownIcon, CaretUpIcon, CaretLeftIcon, CaretRightIcon, CartIcon, CheckmateIcon, ClipboardIcon, ColorPickerIcon, CopyIcon, DeleteIcon, DoubleCaretLeftIcon, DoubleCaretRightIcon, DownloadIcon, DragIcon, EditIcon, HeartIcon, ImageIcon, InfoIcon, MailIcon, MenuIcon, MoreIcon, NewWindowIcon, PauseIcon, PlayIcon, RedoIcon, RemoveIcon, RulerIcon, SearchIcon, SettingsIcon, ShareIcon, SwitchIcon, TagIcon, UndoIcon, WishlistIcon, ZoomInIcon, ZoomOutIcon, SpinnerIcon, };
95
+ export { useAttribute, useConfigurator, useConfigurationLoader, useMetadata, useName, usePlayerLoadingStatus, usePrice, useThreekitInitStatus, useZoom, useSnapshot, useWishlist, useShare, usePlayerPortal, useProductCache, useNestedConfigurator, useLoadingProgress, usePlayer, ThreekitProvider, Player, Button, Cards, Dropdown, Strips, Swatch, 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, 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, };
package/dist/index.js CHANGED
@@ -3,8 +3,8 @@ 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.ArrowLeftIcon = exports.AddIcon = exports.ProductLayout = 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.TotalPrice = exports.AttributeValue = exports.AttributeTitle = exports.ProductDescription = exports.ProductName = exports.Switch = exports.Upload = exports.TilesGroup = exports.Tiles = 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.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.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 = void 0;
6
+ exports.PlayerLoadingCircular = exports.ProductLayout = 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.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.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.DraggableHint = exports.PlayerLoadingSpinner = void 0;
8
8
  var useAttribute_1 = __importDefault(require("./hooks/useAttribute"));
9
9
  exports.useAttribute = useAttribute_1.default;
10
10
  var useConfigurator_1 = __importDefault(require("./hooks/useConfigurator"));
@@ -71,6 +71,8 @@ var AttributeValue_1 = __importDefault(require("./components/AttributeValue"));
71
71
  exports.AttributeValue = AttributeValue_1.default;
72
72
  var TotalPrice_1 = __importDefault(require("./components/TotalPrice"));
73
73
  exports.TotalPrice = TotalPrice_1.default;
74
+ var Skeleton_1 = __importDefault(require("./components/Skeleton"));
75
+ exports.Skeleton = Skeleton_1.default;
74
76
  var message_1 = __importDefault(require("./components/message"));
75
77
  exports.message = message_1.default;
76
78
  var Modal_1 = __importDefault(require("./components/Modal"));
@@ -101,6 +103,12 @@ var TrebleApp_1 = __importDefault(require("./components/TrebleApp"));
101
103
  exports.TrebleApp = TrebleApp_1.default;
102
104
  var ProductLayout_1 = __importDefault(require("./components/ProductLayout"));
103
105
  exports.ProductLayout = ProductLayout_1.default;
106
+ var PlayerLoadingCircular_1 = __importDefault(require("./components/PlayerLoadingCircular"));
107
+ exports.PlayerLoadingCircular = PlayerLoadingCircular_1.default;
108
+ var PlayerLoadingSpinner_1 = __importDefault(require("./components/PlayerLoadingSpinner"));
109
+ exports.PlayerLoadingSpinner = PlayerLoadingSpinner_1.default;
110
+ var DraggableHint_1 = __importDefault(require("./components/DraggableHint"));
111
+ exports.DraggableHint = DraggableHint_1.default;
104
112
  var Add_1 = __importDefault(require("./icons/Add"));
105
113
  exports.AddIcon = Add_1.default;
106
114
  var ArrowLeft_1 = __importDefault(require("./icons/ArrowLeft"));
@@ -135,6 +143,8 @@ var DoubleCaretRight_1 = __importDefault(require("./icons/DoubleCaretRight"));
135
143
  exports.DoubleCaretRightIcon = DoubleCaretRight_1.default;
136
144
  var Download_1 = __importDefault(require("./icons/Download"));
137
145
  exports.DownloadIcon = Download_1.default;
146
+ var Draggable_1 = __importDefault(require("./icons/Draggable"));
147
+ exports.DraggableIcon = Draggable_1.default;
138
148
  var Drag_1 = __importDefault(require("./icons/Drag"));
139
149
  exports.DragIcon = Drag_1.default;
140
150
  var Edit_1 = __importDefault(require("./icons/Edit"));
@@ -52,6 +52,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
53
  exports.removeProductIdx = exports.changeActiveCacheIdx = exports.loadNewProduct = exports.loadProduct = exports.cacheActiveProduct = exports.initProduct = 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");
55
56
  var connection_1 = __importDefault(require("../connection"));
56
57
  var treble_1 = require("./treble");
57
58
  exports.setProductId = (0, toolkit_1.createAction)('treble/set-product-id');
@@ -168,7 +169,8 @@ var cacheActiveProduct = function (config) {
168
169
  var thumbnail = config === null || config === void 0 ? void 0 : config.thumbnail;
169
170
  var connectionObj = connection_1.default.getConnection();
170
171
  delete connectionObj.threekitDomain;
171
- var configuration = window.threekit.configurator.getConfiguration();
172
+ var player = window.threekit.player.enableApi(types_1.PRIVATE_APIS.PLAYER);
173
+ var configuration = player.configurator.getFullConfiguration();
172
174
  var data = { connection: connectionObj, configuration: configuration };
173
175
  var product = Object.assign({
174
176
  id: state.product.id,
@@ -34,7 +34,8 @@ export interface TrebleState {
34
34
  isThreekitInitialized: boolean;
35
35
  playerElId: undefined | string;
36
36
  notifications: boolean;
37
- loadingProgress: number;
37
+ loadingProgress: undefined | number;
38
+ awaitingFirstInteraction: undefined | boolean;
38
39
  }
39
40
  export interface NotificationEvent extends Event {
40
41
  detail: {
@@ -51,12 +52,14 @@ export declare const setPlayerLoading: import("@reduxjs/toolkit").ActionCreatorW
51
52
  export declare const setPlayerElement: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, string>;
52
53
  export declare const reloadTreble: import("@reduxjs/toolkit").ActionCreatorWithPayload<Partial<TrebleState>, string>;
53
54
  export declare const updateLoadingProgress: import("@reduxjs/toolkit").ActionCreatorWithPayload<number, string>;
55
+ export declare const setPlayerInteraction: import("@reduxjs/toolkit").ActionCreatorWithPayload<boolean, string>;
54
56
  declare const reducer: import("redux").Reducer<TrebleState, import("redux").AnyAction>;
55
57
  export declare const getThreekitEnv: (state: RootState) => string;
56
58
  export declare const isThreekitInitialized: (state: RootState) => boolean;
57
59
  export declare const isPlayerLoading: (state: RootState) => boolean;
58
60
  export declare const getPlayerElementId: (state: RootState) => undefined | string;
59
- export declare const getLoadingProgress: (state: RootState) => number;
61
+ export declare const getLoadingProgress: (state: RootState) => undefined | number;
62
+ export declare const getPlayerInteraction: (state: RootState) => undefined | boolean;
60
63
  export declare const initPlayer: (config: IPlayerInit) => (dispatch: ThreekitDispatch, getState: () => RootState) => Promise<void>;
61
64
  export declare const launch: (launchConfig?: Partial<ILaunchConfig>) => (dispatch: ThreekitDispatch) => Promise<void>;
62
65
  export declare const unloadPlayer: () => (dispatch: ThreekitDispatch) => Promise<void>;
@@ -50,7 +50,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
50
50
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
51
  };
52
52
  Object.defineProperty(exports, "__esModule", { value: true });
53
- exports.reloadPlayer = exports.unloadPlayer = exports.launch = exports.initPlayer = exports.getLoadingProgress = exports.getPlayerElementId = exports.isPlayerLoading = exports.isThreekitInitialized = exports.getThreekitEnv = exports.updateLoadingProgress = exports.reloadTreble = exports.setPlayerElement = exports.setPlayerLoading = exports.setThreekitInitialized = exports.setThreekitEnv = void 0;
53
+ exports.reloadPlayer = exports.unloadPlayer = exports.launch = exports.initPlayer = exports.getPlayerInteraction = exports.getLoadingProgress = exports.getPlayerElementId = exports.isPlayerLoading = exports.isThreekitInitialized = exports.getThreekitEnv = exports.setPlayerInteraction = exports.updateLoadingProgress = exports.reloadTreble = exports.setPlayerElement = exports.setPlayerLoading = exports.setThreekitInitialized = exports.setThreekitEnv = void 0;
54
54
  var connection_1 = __importDefault(require("../connection"));
55
55
  var toolkit_1 = require("@reduxjs/toolkit");
56
56
  var api_1 = __importDefault(require("../api"));
@@ -87,7 +87,8 @@ var initialState = {
87
87
  isPlayerLoading: false,
88
88
  playerElId: undefined,
89
89
  notifications: true,
90
- loadingProgress: 0,
90
+ loadingProgress: undefined,
91
+ awaitingFirstInteraction: undefined,
91
92
  };
92
93
  exports.setThreekitEnv = (0, toolkit_1.createAction)('treble/set-threekit-env');
93
94
  exports.setThreekitInitialized = (0, toolkit_1.createAction)('treble/set-threekit-initialized');
@@ -95,6 +96,7 @@ exports.setPlayerLoading = (0, toolkit_1.createAction)('treble/set-player-loadin
95
96
  exports.setPlayerElement = (0, toolkit_1.createAction)('treble/set-player-element');
96
97
  exports.reloadTreble = (0, toolkit_1.createAction)('treble/reload');
97
98
  exports.updateLoadingProgress = (0, toolkit_1.createAction)('treble/update-loading-progress');
99
+ exports.setPlayerInteraction = (0, toolkit_1.createAction)('treble/set-player-interaction');
98
100
  var reducer = (0, toolkit_1.createSlice)({
99
101
  name: 'treble',
100
102
  initialState: initialState,
@@ -123,6 +125,9 @@ var reducer = (0, toolkit_1.createSlice)({
123
125
  state.loadingProgress = Math.round(action.payload * 100);
124
126
  return state;
125
127
  });
128
+ builder.addCase(exports.setPlayerInteraction, function (state, action) {
129
+ return __assign(__assign({}, state), { awaitingFirstInteraction: action.payload });
130
+ });
126
131
  },
127
132
  }).reducer;
128
133
  var getThreekitEnv = function (state) {
@@ -145,13 +150,18 @@ var getLoadingProgress = function (state) {
145
150
  return state.treble.loadingProgress;
146
151
  };
147
152
  exports.getLoadingProgress = getLoadingProgress;
153
+ var getPlayerInteraction = function (state) {
154
+ return state.treble.awaitingFirstInteraction;
155
+ };
156
+ exports.getPlayerInteraction = getPlayerInteraction;
148
157
  var initPlayer = function (config) {
149
158
  return function (dispatch, getState) { return __awaiter(void 0, void 0, void 0, function () {
150
- var el, authToken, assetId, stageId, orgId, playerConfig, initialConfiguration, player, configurator;
159
+ var el, authToken, assetId, stageId, orgId, playerConfig, initialConfiguration, player, configurator, ruleName;
151
160
  return __generator(this, function (_a) {
152
161
  switch (_a.label) {
153
162
  case 0:
154
163
  el = config.el, authToken = config.authToken, assetId = config.assetId, stageId = config.stageId, orgId = config.orgId, playerConfig = config.playerConfig, initialConfiguration = config.initialConfiguration;
164
+ dispatch((0, exports.updateLoadingProgress)(0));
155
165
  return [4, window.threekitPlayer(__assign(__assign({ el: el, authToken: authToken, stageId: stageId, assetId: assetId }, playerConfig), { initialConfiguration: initialConfiguration, onLoadingProgress: function (progress) {
156
166
  var _a;
157
167
  dispatch((0, exports.updateLoadingProgress)(progress));
@@ -182,6 +192,23 @@ var initPlayer = function (config) {
182
192
  dispatch((0, exports.setThreekitInitialized)(true));
183
193
  dispatch((0, exports.setPlayerLoading)(false));
184
194
  dispatch((0, exports.updateLoadingProgress)(1));
195
+ dispatch((0, exports.setPlayerInteraction)(true));
196
+ ruleName = 'use-first-player-interaction';
197
+ window.threekit.player.tools.addTool({
198
+ key: ruleName,
199
+ label: 'use-first-player-interaction',
200
+ active: true,
201
+ enabled: true,
202
+ handlers: {
203
+ mousedown: function () { return __awaiter(void 0, void 0, void 0, function () {
204
+ return __generator(this, function (_a) {
205
+ dispatch((0, exports.setPlayerInteraction)(false));
206
+ window.threekit.player.tools.removeTool(ruleName);
207
+ return [2];
208
+ });
209
+ }); },
210
+ },
211
+ });
185
212
  if (window.threekit.treble._debugMode)
186
213
  (0, utils_1.runDebugger)();
187
214
  window.threekit.player.on('setConfiguration', function () { return __awaiter(void 0, void 0, void 0, function () {
package/dist/types.d.ts CHANGED
@@ -1,30 +1,67 @@
1
1
  /// <reference types="webpack-env" />
2
2
  import threekitAPI from './api';
3
3
  import Treble from './Treble';
4
- declare type SCENE_PHASES = 'LOADED' | 'PRELOADED' | 'RENDERED';
5
- declare type PRIVATE_APIS = 'scene' | 'player';
6
- export declare type DISPLAY_OPTIONS = 'webgl' | 'image';
7
- export declare type IAttributeTypes = 'String' | 'Asset' | 'Color' | 'Number' | 'Boolean';
8
- export declare type AssetType = 'upload' | 'item';
4
+ declare enum SCENE_PHASES {
5
+ LOADED = 0,
6
+ PRELOADED = 1,
7
+ RENDERED = 2
8
+ }
9
+ export declare enum PRIVATE_APIS {
10
+ SCENE = "scene",
11
+ PLAYER = "player"
12
+ }
13
+ export declare enum DISPLAY_OPTIONS {
14
+ WEBGL = "webgl",
15
+ IMAGE = "image"
16
+ }
17
+ export declare enum ATTRIBUTE_TYPES {
18
+ STRING = "String",
19
+ ASSET = "Asset",
20
+ COLOR = "Color",
21
+ NUMBER = "Number",
22
+ BOOLEAN = "Boolean"
23
+ }
24
+ export declare enum ASSET_TYPES {
25
+ UPLOAD = "upload",
26
+ ITEM = "item"
27
+ }
28
+ export declare enum PLUG_TYPES {
29
+ PROXY = "Proxy",
30
+ TRANSFORM = "Transform"
31
+ }
32
+ export declare enum TRANSFORM_PROPERTY_TYPES {
33
+ ROTATION = "rotation",
34
+ TRANSLATION = "translation",
35
+ SCALE = "scale"
36
+ }
37
+ export declare enum SNAPSHOT_FORMATS {
38
+ JPG = "jpg",
39
+ PNG = "png"
40
+ }
41
+ export declare enum SNAPSHOT_OUTPUTS {
42
+ URL = "url",
43
+ DOWNLOAD = "download",
44
+ DATA_URL = "dataUrl",
45
+ BLOB = "blob",
46
+ FILE = "file"
47
+ }
9
48
  export declare type IMetadata = Record<string, string | number | null>;
10
- export interface ISceneQuery {
49
+ export interface ISceneQueryShared {
11
50
  all?: boolean;
12
51
  id?: string;
13
52
  name?: string | RegExp;
14
53
  type?: string | Array<string>;
15
54
  names?: Array<RegExp>;
16
55
  properties?: any;
17
- property?: string;
18
56
  child?: string;
19
57
  parent?: boolean;
20
58
  includeParent?: boolean;
21
- from?: string | ISceneQuery;
59
+ from?: string | ISceneQueryShared | ISceneQueryNode;
22
60
  hasPlug?: string;
23
61
  operator?: any;
24
62
  operatorIndex?: number;
25
63
  evalNode?: boolean;
26
64
  evalPlug?: string;
27
- plug?: string;
28
65
  shallow?: boolean;
29
66
  skipModels?: boolean;
30
67
  configurator?: boolean;
@@ -33,6 +70,15 @@ export interface ISceneQuery {
33
70
  tags?: Array<RegExp>;
34
71
  hierarchial?: boolean;
35
72
  }
73
+ export interface ISceneQueryNode extends ISceneQueryShared {
74
+ plug?: PLUG_TYPES.PROXY;
75
+ property?: 'asset';
76
+ }
77
+ export interface ISceneQueryTransform extends ISceneQueryShared {
78
+ plug: PLUG_TYPES.TRANSFORM;
79
+ property: TRANSFORM_PROPERTY_TYPES;
80
+ }
81
+ export declare type ISceneQuery = ISceneQueryNode | ISceneQueryTransform | string;
36
82
  export interface ISceneResult {
37
83
  id: string;
38
84
  name: string;
@@ -54,7 +100,7 @@ export declare type ISetConfiguration = Record<string, IConfigurationAttribute>;
54
100
  interface IDisplayAttributeConfig {
55
101
  includeHidden?: boolean;
56
102
  }
57
- interface IAttributeBase<T extends IAttributeTypes, V extends IConfigurationAttribute> {
103
+ interface IAttributeBase<T extends ATTRIBUTE_TYPES, V extends IConfigurationAttribute> {
58
104
  type: T;
59
105
  id: string;
60
106
  name: string;
@@ -78,8 +124,8 @@ export interface IHydratedAttributeAssetValue extends IDisplayAttributeAssetValu
78
124
  handleSelect: () => Promise<void>;
79
125
  selected: boolean;
80
126
  }
81
- export interface IAttributeAssetBase<V> extends IAttributeBase<'Asset', IConfigurationAsset> {
82
- assetType: AssetType;
127
+ export interface IAttributeAssetBase<V> extends IAttributeBase<ATTRIBUTE_TYPES.ASSET, IConfigurationAsset> {
128
+ assetType: ASSET_TYPES;
83
129
  blacklist: [];
84
130
  defaultValue: IConfigurationAsset;
85
131
  hiddenValues?: Array<string>;
@@ -97,7 +143,7 @@ export interface IHydratedAttributeStringValue extends IDisplayAttributeStringVa
97
143
  handleSelect: () => Promise<void>;
98
144
  selected: boolean;
99
145
  }
100
- export interface IAttributeStringBase<V> extends IAttributeBase<'String', string> {
146
+ export interface IAttributeStringBase<V> extends IAttributeBase<ATTRIBUTE_TYPES.STRING, string> {
101
147
  blacklist: [];
102
148
  defaultValue: string;
103
149
  hiddenValues?: Array<string>;
@@ -107,17 +153,17 @@ export interface IAttributeStringBase<V> extends IAttributeBase<'String', string
107
153
  export declare type IDisplayAttributeString = IAttributeStringBase<IDisplayAttributeStringValue>;
108
154
  export declare type IHydratedAttributeString = IAttributeStringBase<IHydratedAttributeStringValue>;
109
155
  export declare type IAttributeString = IAttributeStringBase<string>;
110
- export interface IAttributeColor extends IAttributeBase<'Color', IConfigurationColor> {
156
+ export interface IAttributeColor extends IAttributeBase<ATTRIBUTE_TYPES.COLOR, IConfigurationColor> {
111
157
  defaultValue: IConfigurationColor;
112
158
  }
113
- export interface IAttributeNumber extends IAttributeBase<'Number', number> {
159
+ export interface IAttributeNumber extends IAttributeBase<ATTRIBUTE_TYPES.NUMBER, number> {
114
160
  defaultValue: number;
115
161
  lockToStep: boolean;
116
162
  max?: number;
117
163
  min?: number;
118
164
  step: number;
119
165
  }
120
- export interface IAttributeBoolean extends IAttributeBase<'Boolean', boolean> {
166
+ export interface IAttributeBoolean extends IAttributeBase<ATTRIBUTE_TYPES.BOOLEAN, boolean> {
121
167
  defaultValue: boolean;
122
168
  }
123
169
  export declare type IThreekitAttribute = IAttributeAsset | IAttributeColor | IAttributeString | IAttributeNumber | IAttributeBoolean;
@@ -138,7 +184,6 @@ export interface ISnapshotConfig {
138
184
  height: number;
139
185
  };
140
186
  }
141
- export declare type SNAPSHOT_FORMAT_TYPES = 'jpg' | 'png';
142
187
  export interface Node {
143
188
  name: string;
144
189
  nodeId: string;
@@ -203,13 +248,13 @@ export interface IThreekitConfigurator {
203
248
  }
204
249
  export interface IThreekitScene {
205
250
  PHASES: {
206
- LOADED: 'loaded';
207
- PRELOADED: 'preloaded';
208
- RENDERED: 'rendered';
251
+ LOADED: SCENE_PHASES.LOADED;
252
+ PRELOADED: SCENE_PHASES.PRELOADED;
253
+ RENDERED: SCENE_PHASES.RENDERED;
209
254
  };
210
- get: (query: ISceneQuery | string) => ISceneResult;
211
- find: (query: ISceneQuery | string) => ISceneResult;
212
- set: (query: ISceneQuery | string, transform: ICoordinates) => void;
255
+ get: <T extends ISceneQuery>(query: T) => T extends ISceneQueryTransform ? ICoordinates : ISceneResult;
256
+ find: (query: ISceneQuery) => string;
257
+ set: (query: ISceneQueryTransform, transform: ICoordinates) => void;
213
258
  }
214
259
  export interface IThreekitCamera {
215
260
  frameBoundingSphere: () => void;
@@ -231,12 +276,13 @@ export interface IThreekitPlayer {
231
276
  on: (phase: SCENE_PHASES | string, callback: (args: any) => void) => void;
232
277
  getConfigurator: () => Promise<IThreekitConfigurator>;
233
278
  getStageConfigurator: () => Promise<IThreekitConfigurator>;
234
- enableApi: (api: PRIVATE_APIS) => any;
279
+ enableApi: <T extends PRIVATE_APIS>(api: T) => T extends PRIVATE_APIS.PLAYER ? IThreekitPrivatePlayer : any;
235
280
  snapshotAsync: (snapshotConfig: ISnapshotConfig) => Promise<string>;
236
281
  unload: () => Promise<string>;
237
282
  }
238
283
  export interface IThreekitPrivateConfigurator extends IThreekitConfigurator {
239
284
  getAppliedConfiguration: (attributeName: string) => string;
285
+ getFullConfiguration: () => IConfiguration;
240
286
  }
241
287
  export interface IThreekitPrivatePlayer {
242
288
  getConfigurator: () => IThreekitPrivateConfigurator;
@@ -244,6 +290,7 @@ export interface IThreekitPrivatePlayer {
244
290
  getFullConfiguration: () => IConfiguration;
245
291
  };
246
292
  calculateLogs: () => Promise<Record<string, any>>;
293
+ getAssetInstance: (query: ISceneQueryNode | string) => Promise<string>;
247
294
  }
248
295
  export interface ThreekitInitConfig {
249
296
  authToken: string;
package/dist/types.js CHANGED
@@ -1,2 +1,56 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SNAPSHOT_OUTPUTS = exports.SNAPSHOT_FORMATS = exports.TRANSFORM_PROPERTY_TYPES = exports.PLUG_TYPES = exports.ASSET_TYPES = exports.ATTRIBUTE_TYPES = exports.DISPLAY_OPTIONS = exports.PRIVATE_APIS = void 0;
4
+ var SCENE_PHASES;
5
+ (function (SCENE_PHASES) {
6
+ SCENE_PHASES[SCENE_PHASES["LOADED"] = 0] = "LOADED";
7
+ SCENE_PHASES[SCENE_PHASES["PRELOADED"] = 1] = "PRELOADED";
8
+ SCENE_PHASES[SCENE_PHASES["RENDERED"] = 2] = "RENDERED";
9
+ })(SCENE_PHASES || (SCENE_PHASES = {}));
10
+ var PRIVATE_APIS;
11
+ (function (PRIVATE_APIS) {
12
+ PRIVATE_APIS["SCENE"] = "scene";
13
+ PRIVATE_APIS["PLAYER"] = "player";
14
+ })(PRIVATE_APIS = exports.PRIVATE_APIS || (exports.PRIVATE_APIS = {}));
15
+ var DISPLAY_OPTIONS;
16
+ (function (DISPLAY_OPTIONS) {
17
+ DISPLAY_OPTIONS["WEBGL"] = "webgl";
18
+ DISPLAY_OPTIONS["IMAGE"] = "image";
19
+ })(DISPLAY_OPTIONS = exports.DISPLAY_OPTIONS || (exports.DISPLAY_OPTIONS = {}));
20
+ var ATTRIBUTE_TYPES;
21
+ (function (ATTRIBUTE_TYPES) {
22
+ ATTRIBUTE_TYPES["STRING"] = "String";
23
+ ATTRIBUTE_TYPES["ASSET"] = "Asset";
24
+ ATTRIBUTE_TYPES["COLOR"] = "Color";
25
+ ATTRIBUTE_TYPES["NUMBER"] = "Number";
26
+ ATTRIBUTE_TYPES["BOOLEAN"] = "Boolean";
27
+ })(ATTRIBUTE_TYPES = exports.ATTRIBUTE_TYPES || (exports.ATTRIBUTE_TYPES = {}));
28
+ var ASSET_TYPES;
29
+ (function (ASSET_TYPES) {
30
+ ASSET_TYPES["UPLOAD"] = "upload";
31
+ ASSET_TYPES["ITEM"] = "item";
32
+ })(ASSET_TYPES = exports.ASSET_TYPES || (exports.ASSET_TYPES = {}));
33
+ var PLUG_TYPES;
34
+ (function (PLUG_TYPES) {
35
+ PLUG_TYPES["PROXY"] = "Proxy";
36
+ PLUG_TYPES["TRANSFORM"] = "Transform";
37
+ })(PLUG_TYPES = exports.PLUG_TYPES || (exports.PLUG_TYPES = {}));
38
+ var TRANSFORM_PROPERTY_TYPES;
39
+ (function (TRANSFORM_PROPERTY_TYPES) {
40
+ TRANSFORM_PROPERTY_TYPES["ROTATION"] = "rotation";
41
+ TRANSFORM_PROPERTY_TYPES["TRANSLATION"] = "translation";
42
+ TRANSFORM_PROPERTY_TYPES["SCALE"] = "scale";
43
+ })(TRANSFORM_PROPERTY_TYPES = exports.TRANSFORM_PROPERTY_TYPES || (exports.TRANSFORM_PROPERTY_TYPES = {}));
44
+ var SNAPSHOT_FORMATS;
45
+ (function (SNAPSHOT_FORMATS) {
46
+ SNAPSHOT_FORMATS["JPG"] = "jpg";
47
+ SNAPSHOT_FORMATS["PNG"] = "png";
48
+ })(SNAPSHOT_FORMATS = exports.SNAPSHOT_FORMATS || (exports.SNAPSHOT_FORMATS = {}));
49
+ var SNAPSHOT_OUTPUTS;
50
+ (function (SNAPSHOT_OUTPUTS) {
51
+ SNAPSHOT_OUTPUTS["URL"] = "url";
52
+ SNAPSHOT_OUTPUTS["DOWNLOAD"] = "download";
53
+ SNAPSHOT_OUTPUTS["DATA_URL"] = "dataUrl";
54
+ SNAPSHOT_OUTPUTS["BLOB"] = "blob";
55
+ SNAPSHOT_OUTPUTS["FILE"] = "file";
56
+ })(SNAPSHOT_OUTPUTS = exports.SNAPSHOT_OUTPUTS || (exports.SNAPSHOT_OUTPUTS = {}));
package/dist/utils.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { IThreekitCamera, IConfigurationColor, ICoordinates, IQuaternion, IThreekitDisplayAttribute, ISetConfiguration, IHydratedAttribute } from './types';
2
- import { ITrebleConfig, IAttributeTypes } from './types';
2
+ import { ITrebleConfig, ATTRIBUTE_TYPES } from './types';
3
3
  import { RawAttributeValue } from './hooks/useAttribute';
4
4
  import { ITranslationMap } from './api/products';
5
5
  interface ICameraPosition {
@@ -53,7 +53,7 @@ export declare const hydrateAttribute: (data: [
53
53
  undefined | ITranslationMap,
54
54
  undefined | string
55
55
  ], optionSelectionHandler: (config: ISetConfiguration) => Promise<void>) => Record<string, IHydratedAttribute>;
56
- export declare const selectionToConfiguration: (value: RawAttributeValue, attributeType: IAttributeTypes) => string | number | boolean | File | IConfigurationColor | {
56
+ export declare const selectionToConfiguration: (value: RawAttributeValue, attributeType: ATTRIBUTE_TYPES) => string | number | boolean | File | IConfigurationColor | {
57
57
  assetId: RawAttributeValue;
58
58
  } | undefined;
59
59
  export declare const filterFormAttributes: (attributes: Record<string, IThreekitDisplayAttribute>, attributeComponentProps: IAttributesComponentProps, includeReservedAttributes: boolean) => IThreekitDisplayAttribute[];
package/dist/utils.js CHANGED
@@ -47,6 +47,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
47
47
  Object.defineProperty(exports, "__esModule", { value: true });
48
48
  exports.loadTrebleConfig = exports.runDebugger = exports.isUuid = exports.filterFormAttributes = exports.selectionToConfiguration = exports.hydrateAttribute = exports.metadataValueToObject = exports.easeInOutCubic = exports.copyToClipboard = exports.downloadSnapshot = exports.dataURItoFile = exports.dataURItoBlob = exports.setCameraPosition = exports.getCameraPosition = exports.findHitNode = exports.deflateRgb = exports.inflateRgb = exports.rgbToHex = exports.hexToRgb = exports.regularToKebabCase = exports.deepCompare = exports.shallowCompare = exports.getResumableUrl = exports.getParams = exports.objectToQueryStr = exports.isJsonString = exports.isIOS = exports.generateFormClassName = exports.generateDisplayClassName = exports.generateToolClassName = exports.generateLayoutClassName = exports.generateWidgetClassName = exports.generateInputClassName = exports.generateClassName = void 0;
49
49
  var constants_1 = require("./constants");
50
+ var types_1 = require("./types");
50
51
  var generateClassName = function (baseClass) {
51
52
  return function (component, customClassName, title) {
52
53
  var result = "".concat(baseClass, "-").concat(component);
@@ -356,12 +357,12 @@ var hydrateAttribute = function (data, optionSelectionHandler) {
356
357
  exports.hydrateAttribute = hydrateAttribute;
357
358
  var selectionToConfiguration = function (value, attributeType) {
358
359
  switch (attributeType) {
359
- case constants_1.ATTRIBUTE_TYPES.number:
360
- case constants_1.ATTRIBUTE_TYPES.string:
360
+ case types_1.ATTRIBUTE_TYPES.NUMBER:
361
+ case types_1.ATTRIBUTE_TYPES.STRING:
361
362
  return value;
362
- case constants_1.ATTRIBUTE_TYPES.asset:
363
+ case types_1.ATTRIBUTE_TYPES.ASSET:
363
364
  return { assetId: value };
364
- case constants_1.ATTRIBUTE_TYPES.color:
365
+ case types_1.ATTRIBUTE_TYPES.COLOR:
365
366
  return (0, exports.deflateRgb)(value);
366
367
  default:
367
368
  return value;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@threekit-tools/treble",
3
- "version": "0.0.83",
3
+ "version": "0.0.85-next-2",
4
4
  "author": "Amaan Saeed",
5
5
  "license": "MIT",
6
6
  "files": [
@@ -43,6 +43,8 @@
43
43
  "dependencies": {
44
44
  "@reduxjs/toolkit": "^1.6.2",
45
45
  "axios": "^0.22.0",
46
+ "chokidar": "^3.5.3",
47
+ "live-server": "^1.2.2",
46
48
  "react-redux": "^7.2.6",
47
49
  "redux": "^4.1.2",
48
50
  "redux-logger": "^3.0.6",