@threekit-tools/treble 0.0.85-next-1 → 0.0.85-next-4

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 (50) hide show
  1. package/dist/Treble/Treble.d.ts +6 -9
  2. package/dist/Treble/Treble.js +10 -19
  3. package/dist/api/configurations.d.ts +0 -2
  4. package/dist/api/configurations.js +2 -4
  5. package/dist/api/index.d.ts +0 -2
  6. package/dist/api/index.js +0 -2
  7. package/dist/components/AwaitThreekitLoad/index.d.ts +3 -2
  8. package/dist/components/AwaitThreekitLoad/index.js +7 -2
  9. package/dist/components/DraggableHint/draggableIndicator.styles.d.ts +5 -0
  10. package/dist/components/DraggableHint/draggableIndicator.styles.js +35 -0
  11. package/dist/components/DraggableHint/index.d.ts +8 -0
  12. package/dist/components/DraggableHint/index.js +49 -0
  13. package/dist/components/PlayerLoadingCircular/index.d.ts +6 -0
  14. package/dist/components/PlayerLoadingCircular/index.js +18 -0
  15. package/dist/components/PlayerLoadingCircular/playerLoadingCircular.styles.d.ts +7 -0
  16. package/dist/components/PlayerLoadingCircular/playerLoadingCircular.styles.js +17 -0
  17. package/dist/components/PlayerLoadingSpinner/index.d.ts +7 -0
  18. package/dist/components/PlayerLoadingSpinner/index.js +17 -0
  19. package/dist/components/PlayerLoadingSpinner/playerLoadingSpinner.styles.d.ts +4 -0
  20. package/dist/components/PlayerLoadingSpinner/playerLoadingSpinner.styles.js +35 -0
  21. package/dist/components/Share/index.d.ts +0 -2
  22. package/dist/components/Share/index.js +2 -6
  23. package/dist/components/Skeleton/index.d.ts +18 -0
  24. package/dist/components/Skeleton/index.js +73 -0
  25. package/dist/components/Skeleton/skeleton.styles.d.ts +14 -0
  26. package/dist/components/Skeleton/skeleton.styles.js +43 -0
  27. package/dist/components/TurntableAnimation/index.d.ts +12 -0
  28. package/dist/components/TurntableAnimation/index.js +166 -0
  29. package/dist/hooks/useAnimationStart/index.d.ts +2 -0
  30. package/dist/hooks/useAnimationStart/index.js +8 -0
  31. package/dist/hooks/useFirstPlayerInteraction/index.d.ts +6 -0
  32. package/dist/hooks/useFirstPlayerInteraction/index.js +9 -0
  33. package/dist/hooks/useLoadingProgress/index.d.ts +1 -1
  34. package/dist/http/configurations.d.ts +0 -1
  35. package/dist/http/index.d.ts +0 -2
  36. package/dist/http/index.js +0 -2
  37. package/dist/icons/Draggable.d.ts +3 -0
  38. package/dist/icons/Draggable.js +23 -0
  39. package/dist/icons/index.js +2 -0
  40. package/dist/index.d.ts +8 -1
  41. package/dist/index.js +16 -2
  42. package/dist/store/treble.d.ts +8 -3
  43. package/dist/store/treble.js +46 -6
  44. package/dist/types.d.ts +4 -6
  45. package/dist/types.js +5 -5
  46. package/package.json +1 -3
  47. package/dist/api/files.d.ts +0 -1
  48. package/dist/api/files.js +0 -63
  49. package/dist/http/files.d.ts +0 -21
  50. package/dist/http/files.js +0 -26
@@ -1,10 +1,10 @@
1
1
  import threekitAPI from '../api';
2
- import type { IThreekitPlayer, IThreekitPrivatePlayer, IConfiguration, ISetConfiguration, IThreekitPrivateConfigurator } from '../types';
3
- import type { IWishlist } from './wishlist';
2
+ import { IThreekitPlayer, IThreekitPrivatePlayer, IConfiguration, ISetConfiguration, IThreekitPrivateConfigurator } from '../types';
3
+ import { IWishlist } from './wishlist';
4
4
  import snapshots from './snapshots';
5
- import type { ISaveConfiguration } from '../api/configurations';
6
- import type { ICreateOrder } from '../api/orders';
7
- import type { ICartItem } from '../http/orders';
5
+ import { ISaveConfiguration } from '../api/configurations';
6
+ import { ICreateOrder } from '../api/orders';
7
+ import { ICartItem } from '../http/orders';
8
8
  interface ITreble {
9
9
  player: IThreekitPlayer;
10
10
  orgId: string;
@@ -18,9 +18,6 @@ interface IEmailShareCredentials {
18
18
  interface IOrder extends Omit<ICreateOrder, 'cart'> {
19
19
  cart?: Array<ICartItem>;
20
20
  }
21
- interface ISaveConfigurationObject extends Omit<ISaveConfiguration, 'configuraiton'> {
22
- saveSceneGraphState: boolean;
23
- }
24
21
  declare class Treble {
25
22
  _api: typeof threekitAPI;
26
23
  _player: IThreekitPrivatePlayer;
@@ -31,7 +28,7 @@ declare class Treble {
31
28
  _debugMode: boolean;
32
29
  constructor({ player, orgId, initialConfiguration }: ITreble);
33
30
  createOrder: (order?: IOrder) => Promise<import("../http/orders").IOrderResponse>;
34
- saveConfiguration: (config?: Partial<ISaveConfigurationObject>) => Promise<{
31
+ saveConfiguration: (config?: Partial<Omit<ISaveConfiguration, 'configuration'>>) => Promise<{
35
32
  resumableUrl: string;
36
33
  } & import("../http/configurations").IConfigurationResponse & {
37
34
  thumbnail: string;
@@ -46,7 +46,6 @@ var constants_1 = require("../constants");
46
46
  var utils_1 = require("../utils");
47
47
  var wishlist_1 = __importDefault(require("./wishlist"));
48
48
  var snapshots_1 = __importDefault(require("./snapshots"));
49
- var shortid_1 = __importDefault(require("shortid"));
50
49
  var Treble = (function () {
51
50
  function Treble(_a) {
52
51
  var player = _a.player, orgId = _a.orgId, initialConfiguration = _a.initialConfiguration;
@@ -81,32 +80,24 @@ var Treble = (function () {
81
80
  });
82
81
  }); };
83
82
  this.saveConfiguration = function (config) { return __awaiter(_this, void 0, void 0, function () {
84
- var threekitDomain, _a, customerId, metadata, productVersion, attachments, saveSceneGraphState, player, sceneGraphState, sceneGraphResponse, response, params, url;
83
+ var threekitDomain, _a, customerId, metadata, productVersion, attachments, player, response, params, url;
85
84
  var _b;
86
85
  var _c;
87
86
  return __generator(this, function (_d) {
88
87
  switch (_d.label) {
89
88
  case 0:
90
89
  threekitDomain = connection_1.default.getConnection().threekitDomain;
91
- _a = Object.assign({}, config), customerId = _a.customerId, metadata = _a.metadata, productVersion = _a.productVersion, attachments = _a.attachments, saveSceneGraphState = _a.saveSceneGraphState;
90
+ _a = Object.assign({}, config), customerId = _a.customerId, metadata = _a.metadata, productVersion = _a.productVersion, attachments = _a.attachments;
92
91
  player = window.threekit.player.enableApi(types_1.PRIVATE_APIS.PLAYER);
93
- if (!(saveSceneGraphState && player.saveSceneGraphState)) return [3, 2];
94
- return [4, api_1.default.files.saveFile(player.saveSceneGraphState())];
92
+ return [4, api_1.default.configurations.save({
93
+ assetId: window.threekit.player.assetId,
94
+ configuration: player.getConfigurator().getFullConfiguration(),
95
+ customerId: customerId,
96
+ metadata: metadata,
97
+ productVersion: productVersion,
98
+ attachments: attachments,
99
+ })];
95
100
  case 1:
96
- sceneGraphResponse = _d.sent();
97
- sceneGraphState = sceneGraphResponse.files[0].hash;
98
- _d.label = 2;
99
- case 2: return [4, api_1.default.configurations.save({
100
- shortId: shortid_1.default.generate(),
101
- assetId: window.threekit.player.assetId,
102
- configuration: player.getConfigurator().getFullConfiguration(),
103
- customerId: customerId,
104
- metadata: metadata,
105
- productVersion: productVersion,
106
- attachments: attachments,
107
- sceneGraphState: sceneGraphState,
108
- })];
109
- case 3:
110
101
  response = _d.sent();
111
102
  params = Object.assign((0, utils_1.getParams)(), (_b = {},
112
103
  _b[constants_1.TK_SAVED_CONFIG_PARAM_KEY] = response.data.shortId,
@@ -1,14 +1,12 @@
1
1
  import { IConfigurationResponse } from '../http/configurations';
2
2
  import { IConfiguration, IMetadata } from '../types';
3
3
  export interface ISaveConfiguration {
4
- shortId?: string;
5
4
  assetId: string;
6
5
  customerId?: string;
7
6
  configuration: IConfiguration;
8
7
  metadata?: IMetadata;
9
8
  productVersion?: string;
10
9
  attachments?: Record<string, File>;
11
- sceneGraphState?: string;
12
10
  }
13
11
  export declare const save: (saveConfig: ISaveConfiguration) => Promise<import("axios").AxiosResponse<IConfigurationResponse>>;
14
12
  export declare const fetch: (configurationId: string) => Promise<import("axios").AxiosResponse<IConfigurationResponse>>;
@@ -42,9 +42,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
42
42
  exports.fetchAll = exports.fetch = exports.save = void 0;
43
43
  var http_1 = __importDefault(require("../http"));
44
44
  var save = function (saveConfig) { return __awaiter(void 0, void 0, void 0, function () {
45
- var assetId, customerId, configuration, metadata, productVersion, attachments, sceneGraphState, error, fd, attachmentsPrepped_1;
45
+ var assetId, customerId, configuration, metadata, productVersion, attachments, error, fd, attachmentsPrepped_1;
46
46
  return __generator(this, function (_a) {
47
- assetId = saveConfig.assetId, customerId = saveConfig.customerId, configuration = saveConfig.configuration, metadata = saveConfig.metadata, productVersion = saveConfig.productVersion, attachments = saveConfig.attachments, sceneGraphState = saveConfig.sceneGraphState;
47
+ assetId = saveConfig.assetId, customerId = saveConfig.customerId, configuration = saveConfig.configuration, metadata = saveConfig.metadata, productVersion = saveConfig.productVersion, attachments = saveConfig.attachments;
48
48
  if (!assetId)
49
49
  error = 'Requires Asset Id';
50
50
  if (!configuration)
@@ -59,8 +59,6 @@ var save = function (saveConfig) { return __awaiter(void 0, void 0, void 0, func
59
59
  fd.append('metadata', JSON.stringify(metadata));
60
60
  if (customerId)
61
61
  fd.append('customerId', customerId);
62
- if (sceneGraphState)
63
- fd.append('sceneGraphState', sceneGraphState);
64
62
  if (attachments && Object.keys(attachments).length) {
65
63
  attachmentsPrepped_1 = {};
66
64
  Object.entries(attachments).forEach(function (_a) {
@@ -1,4 +1,3 @@
1
- import * as files from './files';
2
1
  import * as products from './products';
3
2
  import * as configurations from './configurations';
4
3
  import * as price from './price';
@@ -7,7 +6,6 @@ import * as catalog from './catalog';
7
6
  import * as datatables from './datatables';
8
7
  import * as server from './server';
9
8
  declare const _default: {
10
- files: typeof files;
11
9
  products: typeof products;
12
10
  configurations: typeof configurations;
13
11
  price: typeof price;
package/dist/api/index.js CHANGED
@@ -23,7 +23,6 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- var files = __importStar(require("./files"));
27
26
  var products = __importStar(require("./products"));
28
27
  var configurations = __importStar(require("./configurations"));
29
28
  var price = __importStar(require("./price"));
@@ -32,7 +31,6 @@ var catalog = __importStar(require("./catalog"));
32
31
  var datatables = __importStar(require("./datatables"));
33
32
  var server = __importStar(require("./server"));
34
33
  exports.default = {
35
- files: files,
36
34
  products: products,
37
35
  configurations: configurations,
38
36
  price: price,
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
- interface IAwaitThreekitLoad {
2
+ interface AwaitThreekitLoadProps {
3
3
  children: React.ReactNode;
4
+ fallback?: React.ReactNode;
4
5
  }
5
- declare const AwaitThreekitLoad: (props: IAwaitThreekitLoad) => JSX.Element | null;
6
+ declare const AwaitThreekitLoad: React.FC<AwaitThreekitLoadProps>;
6
7
  export default AwaitThreekitLoad;
@@ -6,9 +6,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  var react_1 = __importDefault(require("react"));
7
7
  var useThreekitInitStatus_1 = __importDefault(require("../../hooks/useThreekitInitStatus"));
8
8
  var AwaitThreekitLoad = function (props) {
9
- var children = props.children;
9
+ var children = props.children, fallback = props.fallback;
10
10
  var isLoaded = (0, useThreekitInitStatus_1.default)();
11
- if (!isLoaded || !children)
11
+ if (!isLoaded) {
12
+ if (fallback)
13
+ return react_1.default.createElement(react_1.default.Fragment, null, fallback);
14
+ return null;
15
+ }
16
+ if (!children)
12
17
  return null;
13
18
  return react_1.default.createElement(react_1.default.Fragment, null, children);
14
19
  };
@@ -0,0 +1,5 @@
1
+ import { DraggableIndicatorProps } from './index';
2
+ declare type HandWrapperProps = Pick<DraggableIndicatorProps, 'color' | 'duration'>;
3
+ export declare const Wrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
4
+ export declare const HandWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, HandWrapperProps, never>;
5
+ export {};
@@ -0,0 +1,35 @@
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.HandWrapper = exports.Wrapper = void 0;
31
+ var styled_components_1 = __importStar(require("styled-components"));
32
+ var bounce = (0, styled_components_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n transform: translateX(0);\n }\n\n 50% {\n transform: translateX(-100px);\n }\n\n 100% {\n transform: translateX(0);\n }\n"], ["\n 0% {\n transform: translateX(0);\n }\n\n 50% {\n transform: translateX(-100px);\n }\n\n 100% {\n transform: translateX(0);\n }\n"])));
33
+ exports.Wrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: max-content;\n position: absolute;\n z-index: 100;\n top: 50%;\n left: 50%;\n transform: translateX(-50%) translateY(-50%);\n"], ["\n width: max-content;\n position: absolute;\n z-index: 100;\n top: 50%;\n left: 50%;\n transform: translateX(-50%) translateY(-50%);\n"])));
34
+ exports.HandWrapper = styled_components_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n height: 56px;\n width: 56px;\n background: ", ";\n margin: 0 auto;\n border-radius: 50%;\n z-index: 10;\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n\n animation: ", " ", "s ease infinite;\n\n & > div {\n height: max-content;\n width: max-content;\n margin: 0 auto;\n }\n"], ["\n height: 56px;\n width: 56px;\n background: ", ";\n margin: 0 auto;\n border-radius: 50%;\n z-index: 10;\n display: flex;\n flex-direction: column;\n justify-content: space-around;\n\n animation: ", " ", "s ease infinite;\n\n & > div {\n height: max-content;\n width: max-content;\n margin: 0 auto;\n }\n"])), function (props) { return props.color || '#78c4a299'; }, bounce, function (props) { return props.duration || 2.5; });
35
+ var templateObject_1, templateObject_2, templateObject_3;
@@ -0,0 +1,8 @@
1
+ /// <reference types="react" />
2
+ export interface DraggableIndicatorProps {
3
+ color?: string;
4
+ duration?: number;
5
+ timeout?: number;
6
+ }
7
+ export declare function DraggableIndicator(props: DraggableIndicatorProps): JSX.Element | null;
8
+ export default DraggableIndicator;
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.DraggableIndicator = void 0;
30
+ var react_1 = __importStar(require("react"));
31
+ var draggableIndicator_styles_1 = require("./draggableIndicator.styles");
32
+ var Draggable_1 = __importDefault(require("../../icons/Draggable"));
33
+ var useFirstPlayerInteraction_1 = __importDefault(require("../../hooks/useFirstPlayerInteraction"));
34
+ function DraggableIndicator(props) {
35
+ var awaitingFirstInteraction = (0, useFirstPlayerInteraction_1.default)();
36
+ var _a = (0, react_1.useState)(false), hasTimeoutExpired = _a[0], setHasTimeoutExpired = _a[1];
37
+ (0, react_1.useEffect)(function () {
38
+ if (awaitingFirstInteraction && props.timeout)
39
+ setTimeout(function () { return setHasTimeoutExpired(true); }, props.timeout);
40
+ }, [awaitingFirstInteraction]);
41
+ if (!awaitingFirstInteraction || hasTimeoutExpired)
42
+ return null;
43
+ return (react_1.default.createElement(draggableIndicator_styles_1.Wrapper, null,
44
+ react_1.default.createElement(draggableIndicator_styles_1.HandWrapper, { color: props.color, duration: props.duration },
45
+ react_1.default.createElement("div", null,
46
+ react_1.default.createElement(Draggable_1.default, null)))));
47
+ }
48
+ exports.DraggableIndicator = DraggableIndicator;
49
+ exports.default = DraggableIndicator;
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export interface PlayerLoadingCircularProps {
3
+ size?: string;
4
+ }
5
+ export declare function PlayerLoadingCircular(props: PlayerLoadingCircularProps): JSX.Element | null;
6
+ export default PlayerLoadingCircular;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PlayerLoadingCircular = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ var playerLoadingCircular_styles_1 = require("./playerLoadingCircular.styles");
9
+ var useLoadingProgress_1 = __importDefault(require("../../hooks/useLoadingProgress"));
10
+ function PlayerLoadingCircular(props) {
11
+ var progress = (0, useLoadingProgress_1.default)();
12
+ if (progress === 100 || progress === undefined)
13
+ return null;
14
+ return (react_1.default.createElement(playerLoadingCircular_styles_1.Wrapper, { size: props.size },
15
+ react_1.default.createElement(playerLoadingCircular_styles_1.Progress, { size: props.size, progress: progress })));
16
+ }
17
+ exports.PlayerLoadingCircular = PlayerLoadingCircular;
18
+ exports.default = PlayerLoadingCircular;
@@ -0,0 +1,7 @@
1
+ import { PlayerLoadingCircularProps } from './index';
2
+ interface ProgressProps extends PlayerLoadingCircularProps {
3
+ progress: number;
4
+ }
5
+ export declare const Wrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, Pick<ProgressProps, "size">, never>;
6
+ export declare const Progress: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ProgressProps, never>;
7
+ export {};
@@ -0,0 +1,17 @@
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.Progress = exports.Wrapper = void 0;
11
+ var styled_components_1 = __importDefault(require("styled-components"));
12
+ var PRIMARY_COLOR = '#369';
13
+ var SECONDARY_COLOR = '#adf';
14
+ var SIZE = '120px';
15
+ exports.Wrapper = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n height: ", ";\n width: ", ";\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translateX(-50%) translateY(-50%);\n"], ["\n height: ", ";\n width: ", ";\n position: absolute;\n left: 50%;\n top: 50%;\n transform: translateX(-50%) translateY(-50%);\n"])), function (props) { return props.size || SIZE; }, function (props) { return props.size || SIZE; });
16
+ exports.Progress = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n animation: progress 2s 0.5s forwards;\n width: ", ";\n aspect-ratio: 1;\n border-radius: 50%;\n position: relative;\n overflow: hidden;\n display: grid;\n place-items: center;\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: conic-gradient(\n ", " calc(", " * 1%),\n ", " 0\n );\n mask: radial-gradient(#0000 55%, #000 0);\n mask-mode: alpha;\n }\n\n &::after {\n counter-reset: percentage ", ";\n content: counter(percentage) '%';\n font-family: Helvetica, Arial, sans-serif;\n font-size: calc(", " / 5);\n color: ", ";\n }\n"], ["\n animation: progress 2s 0.5s forwards;\n width: ", ";\n aspect-ratio: 1;\n border-radius: 50%;\n position: relative;\n overflow: hidden;\n display: grid;\n place-items: center;\n\n &::before {\n content: '';\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: conic-gradient(\n ", " calc(", " * 1%),\n ", " 0\n );\n mask: radial-gradient(#0000 55%, #000 0);\n mask-mode: alpha;\n }\n\n &::after {\n counter-reset: percentage ", ";\n content: counter(percentage) '%';\n font-family: Helvetica, Arial, sans-serif;\n font-size: calc(", " / 5);\n color: ", ";\n }\n"])), function (props) { return props.size || SIZE; }, PRIMARY_COLOR, function (props) { return props.progress; }, SECONDARY_COLOR, function (props) { return props.progress; }, function (props) { return props.size || SIZE; }, PRIMARY_COLOR);
17
+ var templateObject_1, templateObject_2;
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ export interface PlayerLoadingSpinnerProps {
3
+ duration?: number;
4
+ size?: string;
5
+ }
6
+ export declare function PlayerLoadingSpinner(props: PlayerLoadingSpinnerProps): JSX.Element | null;
7
+ export default PlayerLoadingSpinner;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PlayerLoadingSpinner = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ var playerLoadingSpinner_styles_1 = require("./playerLoadingSpinner.styles");
9
+ var useThreekitInitStatus_1 = __importDefault(require("../../hooks/useThreekitInitStatus"));
10
+ function PlayerLoadingSpinner(props) {
11
+ var hide = (0, useThreekitInitStatus_1.default)();
12
+ if (hide)
13
+ return null;
14
+ return react_1.default.createElement(playerLoadingSpinner_styles_1.Wrapper, { size: props.size, duration: props.duration });
15
+ }
16
+ exports.PlayerLoadingSpinner = PlayerLoadingSpinner;
17
+ exports.default = PlayerLoadingSpinner;
@@ -0,0 +1,4 @@
1
+ import { PlayerLoadingSpinnerProps } from './index';
2
+ declare type WrapperProps = Pick<PlayerLoadingSpinnerProps, 'duration' | 'size'>;
3
+ export declare const Wrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, WrapperProps, never>;
4
+ export {};
@@ -0,0 +1,35 @@
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 __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
7
+ if (k2 === undefined) k2 = k;
8
+ var desc = Object.getOwnPropertyDescriptor(m, k);
9
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
10
+ desc = { enumerable: true, get: function() { return m[k]; } };
11
+ }
12
+ Object.defineProperty(o, k2, desc);
13
+ }) : (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ o[k2] = m[k];
16
+ }));
17
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
18
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
19
+ }) : function(o, v) {
20
+ o["default"] = v;
21
+ });
22
+ var __importStar = (this && this.__importStar) || function (mod) {
23
+ if (mod && mod.__esModule) return mod;
24
+ var result = {};
25
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
26
+ __setModuleDefault(result, mod);
27
+ return result;
28
+ };
29
+ Object.defineProperty(exports, "__esModule", { value: true });
30
+ exports.Wrapper = void 0;
31
+ var styled_components_1 = __importStar(require("styled-components"));
32
+ var SIZE = '36px';
33
+ var spin = (0, styled_components_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\nto {\n transform: translateY(-50%) translateX(-50%) rotate(1turn);\n}\n"], ["\nto {\n transform: translateY(-50%) translateX(-50%) rotate(1turn);\n}\n"])));
34
+ exports.Wrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translateY(-50%) translateX(-50%);\n width: ", ";\n aspect-ratio: 1;\n display: grid;\n mask: conic-gradient(from 22deg, #0001, #000);\n animation: ", " ", "s steps(8) infinite;\n\n &,\n &:before {\n background: linear-gradient(hsl(230deg 100% 20%) 0 0) 50%/34% 8% space no-repeat,\n linear-gradient(hsl(230deg 100% 20%) 0 0) 50%/8% 34% no-repeat space;\n }\n\n &:before {\n content: \"\";\n transform: rotate(45deg);\n }\n}\n\n"], ["\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translateY(-50%) translateX(-50%);\n width: ", ";\n aspect-ratio: 1;\n display: grid;\n mask: conic-gradient(from 22deg, #0001, #000);\n animation: ", " ", "s steps(8) infinite;\n\n &,\n &:before {\n background: linear-gradient(hsl(230deg 100% 20%) 0 0) 50%/34% 8% space no-repeat,\n linear-gradient(hsl(230deg 100% 20%) 0 0) 50%/8% 34% no-repeat space;\n }\n\n &:before {\n content: \"\";\n transform: rotate(45deg);\n }\n}\n\n"])), function (props) { return props.size || SIZE; }, spin, function (props) { return props.duration || 1; });
35
+ var templateObject_1, templateObject_2;
@@ -8,7 +8,6 @@ interface ShareProps {
8
8
  className?: string;
9
9
  message?: string;
10
10
  position: Positions;
11
- saveSceneGraphState?: boolean;
12
11
  }
13
12
  export declare const Share: {
14
13
  (props: ShareProps): JSX.Element | null;
@@ -23,7 +22,6 @@ export declare const Share: {
23
22
  shape: string;
24
23
  type: string;
25
24
  message: string;
26
- saveSceneGraphState: boolean;
27
25
  };
28
26
  };
29
27
  export default Share;
@@ -77,8 +77,7 @@ var Share = function (props) {
77
77
  shape: 'round',
78
78
  message: 'Link copied!',
79
79
  position: 'bottom-right',
80
- saveSceneGraphState: false,
81
- }, props), shape = _a.shape, type = _a.type, className = _a.className, msg = _a.message, position = _a.position, saveSceneGraphState = _a.saveSceneGraphState;
80
+ }, props), shape = _a.shape, type = _a.type, className = _a.className, msg = _a.message, position = _a.position;
82
81
  var hasLoaded = (0, useThreekitInitStatus_1.default)();
83
82
  var _b = (0, react_1.useState)(false), show = _b[0], setShow = _b[1];
84
83
  var _c = (0, react_1.useState)(null), resumeUrl = _c[0], setResumeUrl = _c[1];
@@ -114,9 +113,7 @@ var Share = function (props) {
114
113
  setShow(!show);
115
114
  return [2];
116
115
  }
117
- return [4, window.threekit.treble.saveConfiguration({
118
- saveSceneGraphState: saveSceneGraphState,
119
- })];
116
+ return [4, window.threekit.treble.saveConfiguration()];
120
117
  case 1:
121
118
  configuration = _a.sent();
122
119
  _a.label = 2;
@@ -168,6 +165,5 @@ exports.Share.defaultProps = {
168
165
  shape: 'round',
169
166
  type: 'threekit',
170
167
  message: 'Link copied!',
171
- saveSceneGraphState: false,
172
168
  };
173
169
  exports.default = exports.Share;
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ interface SkeletonProps {
3
+ shimmer?: boolean;
4
+ }
5
+ interface ISkeleton extends React.FC<SkeletonProps> {
6
+ ColorSwatchSkeleton: React.FC<SkeletonProps>;
7
+ CardsSkeleton: React.FC<SkeletonProps>;
8
+ StripsSkeleton: React.FC<SkeletonProps>;
9
+ FormHeaderSkeleton: React.FC<SkeletonProps>;
10
+ FormDescriptionSkeleton: React.FC<SkeletonProps>;
11
+ }
12
+ export declare const FormHeaderSkeleton: React.FC<SkeletonProps>;
13
+ export declare const FormDescriptionSkeleton: React.FC<SkeletonProps>;
14
+ export declare const StripsSkeleton: React.FC<SkeletonProps>;
15
+ export declare const CardsSkeleton: React.FC<SkeletonProps>;
16
+ export declare const ColowSwatchSkeleton: React.FC<SkeletonProps>;
17
+ declare const Skeleton: ISkeleton;
18
+ export default Skeleton;
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ColowSwatchSkeleton = exports.CardsSkeleton = exports.StripsSkeleton = exports.FormDescriptionSkeleton = exports.FormHeaderSkeleton = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ var skeleton_styles_1 = require("./skeleton.styles");
9
+ var FormHeaderSkeleton = function (props) {
10
+ var shimmer = props.shimmer;
11
+ return (react_1.default.createElement(skeleton_styles_1.FormHeaderWrapper, { shimmer: shimmer },
12
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null),
13
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null)));
14
+ };
15
+ exports.FormHeaderSkeleton = FormHeaderSkeleton;
16
+ var FormDescriptionSkeleton = function (props) {
17
+ var shimmer = props.shimmer;
18
+ return react_1.default.createElement(skeleton_styles_1.FormDescriptionWrapper, { shimmer: shimmer });
19
+ };
20
+ exports.FormDescriptionSkeleton = FormDescriptionSkeleton;
21
+ var StripsSkeleton = function (props) {
22
+ var shimmer = props.shimmer;
23
+ return (react_1.default.createElement(skeleton_styles_1.SkeletonWrapper, { shimmer: shimmer },
24
+ react_1.default.createElement(skeleton_styles_1.TitleWrapper, { shimmer: shimmer }),
25
+ react_1.default.createElement(skeleton_styles_1.DescriptionWrapper, { shimmer: shimmer }),
26
+ react_1.default.createElement("div", null, Array(3)
27
+ .fill(null)
28
+ .map(function (_, i) { return (react_1.default.createElement(skeleton_styles_1.StripsItem, { key: i },
29
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null),
30
+ react_1.default.createElement("div", null,
31
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null),
32
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null)),
33
+ react_1.default.createElement("div", null,
34
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null)))); }))));
35
+ };
36
+ exports.StripsSkeleton = StripsSkeleton;
37
+ var CardsSkeleton = function (props) {
38
+ var shimmer = props.shimmer;
39
+ return (react_1.default.createElement(skeleton_styles_1.SkeletonWrapper, { shimmer: shimmer },
40
+ react_1.default.createElement(skeleton_styles_1.TitleWrapper, { shimmer: shimmer }),
41
+ react_1.default.createElement(skeleton_styles_1.DescriptionWrapper, { shimmer: shimmer }),
42
+ react_1.default.createElement(skeleton_styles_1.RowWrapper, null, Array(3)
43
+ .fill(null)
44
+ .map(function (_, i) { return (react_1.default.createElement(skeleton_styles_1.CardItem, { key: i },
45
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null),
46
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null),
47
+ react_1.default.createElement(skeleton_styles_1.ShimmerDiv, null))); }))));
48
+ };
49
+ exports.CardsSkeleton = CardsSkeleton;
50
+ var ColowSwatchSkeleton = function (props) {
51
+ var shimmer = props.shimmer;
52
+ return (react_1.default.createElement(skeleton_styles_1.SkeletonWrapper, { shimmer: shimmer },
53
+ react_1.default.createElement(skeleton_styles_1.TitleWrapper, { shimmer: shimmer }),
54
+ react_1.default.createElement(skeleton_styles_1.DescriptionWrapper, { shimmer: shimmer }),
55
+ react_1.default.createElement(skeleton_styles_1.RowWrapper, null, Array(8)
56
+ .fill(null)
57
+ .map(function (_, i) { return (react_1.default.createElement(skeleton_styles_1.SwatchItem, { key: i })); }))));
58
+ };
59
+ exports.ColowSwatchSkeleton = ColowSwatchSkeleton;
60
+ var Skeleton = function (props) {
61
+ var shimmer = props.shimmer;
62
+ return (react_1.default.createElement("div", null,
63
+ react_1.default.createElement(exports.FormHeaderSkeleton, { shimmer: shimmer }),
64
+ react_1.default.createElement(exports.FormDescriptionSkeleton, { shimmer: shimmer }),
65
+ react_1.default.createElement(exports.StripsSkeleton, { shimmer: shimmer }),
66
+ react_1.default.createElement(exports.CardsSkeleton, { shimmer: shimmer })));
67
+ };
68
+ Skeleton.FormHeaderSkeleton = exports.FormHeaderSkeleton;
69
+ Skeleton.FormDescriptionSkeleton = exports.FormDescriptionSkeleton;
70
+ Skeleton.ColorSwatchSkeleton = exports.ColowSwatchSkeleton;
71
+ Skeleton.CardsSkeleton = exports.CardsSkeleton;
72
+ Skeleton.StripsSkeleton = exports.StripsSkeleton;
73
+ exports.default = Skeleton;
@@ -0,0 +1,14 @@
1
+ interface ShimmerProps {
2
+ shimmer?: boolean;
3
+ }
4
+ export declare const ShimmerDiv: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
5
+ export declare const SkeletonWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
6
+ export declare const FormHeaderWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
7
+ export declare const FormDescriptionWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
8
+ export declare const TitleWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
9
+ export declare const DescriptionWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
10
+ export declare const RowWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
11
+ export declare const SwatchItem: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, ShimmerProps, never>;
12
+ export declare const StripsItem: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
13
+ export declare const CardItem: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
14
+ export {};