@r2u/javascript-ar-sdk 6.22.0 → 6.22.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 (180) hide show
  1. package/dist/ar.bundle.js +1 -1
  2. package/dist/assets/icons.js +18 -0
  3. package/dist/assets/icons.js.map +1 -0
  4. package/dist/components/Modal/Canvas/index.js +11 -0
  5. package/dist/components/Modal/Canvas/index.js.map +1 -0
  6. package/dist/components/Modal/Canvas/styles.js +34 -0
  7. package/dist/components/Modal/Canvas/styles.js.map +1 -0
  8. package/dist/components/Modal/Context.js +27 -0
  9. package/dist/components/Modal/Context.js.map +1 -0
  10. package/dist/components/Modal/Feedback/Confirm.js +16 -0
  11. package/dist/components/Modal/Feedback/Confirm.js.map +1 -0
  12. package/dist/components/Modal/Feedback/Main.js +16 -0
  13. package/dist/components/Modal/Feedback/Main.js.map +1 -0
  14. package/dist/components/Modal/Feedback/index.js +31 -0
  15. package/dist/components/Modal/Feedback/index.js.map +1 -0
  16. package/dist/components/Modal/Feedback/styles.js +100 -0
  17. package/dist/components/Modal/Feedback/styles.js.map +1 -0
  18. package/dist/components/Modal/Instructions/index.js +50 -0
  19. package/dist/components/Modal/Instructions/index.js.map +1 -0
  20. package/dist/components/Modal/Instructions/styles.js +137 -0
  21. package/dist/components/Modal/Instructions/styles.js.map +1 -0
  22. package/dist/components/Modal/InstructionsAmericanas/index.js +50 -0
  23. package/dist/components/Modal/InstructionsAmericanas/index.js.map +1 -0
  24. package/dist/components/Modal/InstructionsAmericanas/styles.js +116 -0
  25. package/dist/components/Modal/InstructionsAmericanas/styles.js.map +1 -0
  26. package/dist/components/Modal/InstructionsMolduraMinuto/index.js +103 -0
  27. package/dist/components/Modal/InstructionsMolduraMinuto/index.js.map +1 -0
  28. package/dist/components/Modal/InstructionsMolduraMinuto/styles.js +77 -0
  29. package/dist/components/Modal/InstructionsMolduraMinuto/styles.js.map +1 -0
  30. package/dist/components/Modal/InstructionsYDigital/index.js +50 -0
  31. package/dist/components/Modal/InstructionsYDigital/index.js.map +1 -0
  32. package/dist/components/Modal/InstructionsYDigital/styles.js +137 -0
  33. package/dist/components/Modal/InstructionsYDigital/styles.js.map +1 -0
  34. package/dist/components/Modal/InstructionsYDigitalVideo/index.js +44 -0
  35. package/dist/components/Modal/InstructionsYDigitalVideo/index.js.map +1 -0
  36. package/dist/components/Modal/InstructionsYDigitalVideo/styles.js +137 -0
  37. package/dist/components/Modal/InstructionsYDigitalVideo/styles.js.map +1 -0
  38. package/dist/components/Modal/Social/index.js +20 -0
  39. package/dist/components/Modal/Social/index.js.map +1 -0
  40. package/dist/components/Modal/Social/styles.js +85 -0
  41. package/dist/components/Modal/Social/styles.js.map +1 -0
  42. package/dist/components/Modal/Viewer/index.js +26 -0
  43. package/dist/components/Modal/Viewer/index.js.map +1 -0
  44. package/dist/components/Modal/Viewer/styles.js +56 -0
  45. package/dist/components/Modal/Viewer/styles.js.map +1 -0
  46. package/dist/components/Modal/ViewerFull/index.js +15 -0
  47. package/dist/components/Modal/ViewerFull/index.js.map +1 -0
  48. package/dist/components/Modal/ViewerFull/styles.js +12 -0
  49. package/dist/components/Modal/ViewerFull/styles.js.map +1 -0
  50. package/dist/components/R2UModelViewer/ProgressBar/index.js +9 -0
  51. package/dist/components/R2UModelViewer/ProgressBar/index.js.map +1 -0
  52. package/dist/components/R2UModelViewer/ProgressBar/styles.js +54 -0
  53. package/dist/components/R2UModelViewer/ProgressBar/styles.js.map +1 -0
  54. package/dist/components/R2UModelViewer/ProgressBar/types.js +1 -0
  55. package/dist/components/R2UModelViewer/ProgressBar/types.js.map +1 -0
  56. package/dist/components/R2UModelViewer/index.js +63 -0
  57. package/dist/components/R2UModelViewer/index.js.map +1 -0
  58. package/dist/components/R2UModelViewer/styles.js +128 -0
  59. package/dist/components/R2UModelViewer/styles.js.map +1 -0
  60. package/dist/components/WaterMark/index.js +9 -0
  61. package/dist/components/WaterMark/index.js.map +1 -0
  62. package/dist/components/WaterMark/styles.js +26 -0
  63. package/dist/components/WaterMark/styles.js.map +1 -0
  64. package/dist/config/i18n.js +69 -0
  65. package/dist/config/i18n.js.map +1 -0
  66. package/dist/error/ViewerError.js +7 -0
  67. package/dist/error/ViewerError.js.map +1 -0
  68. package/dist/fonts/index.js +9 -0
  69. package/dist/fonts/index.js.map +1 -0
  70. package/dist/{src/index.d.ts → index.d.ts} +1 -1
  71. package/dist/index.js +25 -1
  72. package/dist/index.js.map +1 -0
  73. package/dist/init.bundle.js +1 -1
  74. package/dist/locales/en/translation.json +36 -0
  75. package/dist/methods/analytics.js +17 -0
  76. package/dist/methods/analytics.js.map +1 -0
  77. package/dist/methods/ar.js +372 -0
  78. package/dist/methods/ar.js.map +1 -0
  79. package/dist/methods/config.js +40 -0
  80. package/dist/methods/config.js.map +1 -0
  81. package/dist/methods/init.js +51 -0
  82. package/dist/methods/init.js.map +1 -0
  83. package/dist/methods/qrCode.js +48 -0
  84. package/dist/methods/qrCode.js.map +1 -0
  85. package/dist/{src/methods → methods}/sku.d.ts +1 -1
  86. package/dist/methods/sku.js +47 -0
  87. package/dist/methods/sku.js.map +1 -0
  88. package/dist/methods/types.js +1 -0
  89. package/dist/methods/types.js.map +1 -0
  90. package/dist/methods/viewer.js +310 -0
  91. package/dist/methods/viewer.js.map +1 -0
  92. package/dist/screens/Fallback/index.js +22 -0
  93. package/dist/screens/Fallback/index.js.map +1 -0
  94. package/dist/{src/screens → screens}/Feedback/index.d.ts +1 -1
  95. package/dist/screens/Feedback/index.js +21 -0
  96. package/dist/screens/Feedback/index.js.map +1 -0
  97. package/dist/{src/screens → screens}/Instructions/index.d.ts +1 -1
  98. package/dist/screens/Instructions/index.js +48 -0
  99. package/dist/screens/Instructions/index.js.map +1 -0
  100. package/dist/screens/Social/index.js +9 -0
  101. package/dist/screens/Social/index.js.map +1 -0
  102. package/dist/services/analytics.js +219 -0
  103. package/dist/services/analytics.js.map +1 -0
  104. package/dist/services/constants.js +65 -0
  105. package/dist/services/constants.js.map +1 -0
  106. package/dist/services/cookies.js +19 -0
  107. package/dist/services/cookies.js.map +1 -0
  108. package/dist/services/customer.js +17 -0
  109. package/dist/services/customer.js.map +1 -0
  110. package/dist/services/customization.js +73 -0
  111. package/dist/services/customization.js.map +1 -0
  112. package/dist/services/product.js +49 -0
  113. package/dist/services/product.js.map +1 -0
  114. package/dist/services/requests.js +55 -0
  115. package/dist/services/requests.js.map +1 -0
  116. package/dist/sku.bundle.js +1 -1
  117. package/dist/{src/state.d.ts → state.d.ts} +1 -1
  118. package/dist/state.js +23 -0
  119. package/dist/state.js.map +1 -0
  120. package/dist/types/Viewer.js +1 -0
  121. package/dist/types/Viewer.js.map +1 -0
  122. package/dist/types/index.js +1 -0
  123. package/dist/types/index.js.map +1 -0
  124. package/dist/utils/sortCustomization.js +10 -0
  125. package/dist/utils/sortCustomization.js.map +1 -0
  126. package/dist/{vendors.fe050b32669a2a3c34a3.bundle.js → vendors.7d567adcf040d43f7345.bundle.js} +1 -1
  127. package/package.json +5 -3
  128. /package/dist/{src/assets → assets}/icons.d.ts +0 -0
  129. /package/dist/{src/components → components}/Modal/Canvas/index.d.ts +0 -0
  130. /package/dist/{src/components → components}/Modal/Canvas/styles.d.ts +0 -0
  131. /package/dist/{src/components → components}/Modal/Context.d.ts +0 -0
  132. /package/dist/{src/components → components}/Modal/Feedback/Confirm.d.ts +0 -0
  133. /package/dist/{src/components → components}/Modal/Feedback/Main.d.ts +0 -0
  134. /package/dist/{src/components → components}/Modal/Feedback/index.d.ts +0 -0
  135. /package/dist/{src/components → components}/Modal/Feedback/styles.d.ts +0 -0
  136. /package/dist/{src/components → components}/Modal/Instructions/index.d.ts +0 -0
  137. /package/dist/{src/components → components}/Modal/Instructions/styles.d.ts +0 -0
  138. /package/dist/{src/components → components}/Modal/InstructionsAmericanas/index.d.ts +0 -0
  139. /package/dist/{src/components → components}/Modal/InstructionsAmericanas/styles.d.ts +0 -0
  140. /package/dist/{src/components → components}/Modal/InstructionsMolduraMinuto/index.d.ts +0 -0
  141. /package/dist/{src/components → components}/Modal/InstructionsMolduraMinuto/styles.d.ts +0 -0
  142. /package/dist/{src/components → components}/Modal/InstructionsYDigital/index.d.ts +0 -0
  143. /package/dist/{src/components → components}/Modal/InstructionsYDigital/styles.d.ts +0 -0
  144. /package/dist/{src/components → components}/Modal/InstructionsYDigitalVideo/index.d.ts +0 -0
  145. /package/dist/{src/components → components}/Modal/InstructionsYDigitalVideo/styles.d.ts +0 -0
  146. /package/dist/{src/components → components}/Modal/Social/index.d.ts +0 -0
  147. /package/dist/{src/components → components}/Modal/Social/styles.d.ts +0 -0
  148. /package/dist/{src/components → components}/Modal/Viewer/index.d.ts +0 -0
  149. /package/dist/{src/components → components}/Modal/Viewer/styles.d.ts +0 -0
  150. /package/dist/{src/components → components}/Modal/ViewerFull/index.d.ts +0 -0
  151. /package/dist/{src/components → components}/Modal/ViewerFull/styles.d.ts +0 -0
  152. /package/dist/{src/components → components}/R2UModelViewer/ProgressBar/index.d.ts +0 -0
  153. /package/dist/{src/components → components}/R2UModelViewer/ProgressBar/styles.d.ts +0 -0
  154. /package/dist/{src/components → components}/R2UModelViewer/ProgressBar/types.d.ts +0 -0
  155. /package/dist/{src/components → components}/R2UModelViewer/index.d.ts +0 -0
  156. /package/dist/{src/components → components}/R2UModelViewer/styles.d.ts +0 -0
  157. /package/dist/{src/components → components}/WaterMark/index.d.ts +0 -0
  158. /package/dist/{src/components → components}/WaterMark/styles.d.ts +0 -0
  159. /package/dist/{src/config → config}/i18n.d.ts +0 -0
  160. /package/dist/{src/error → error}/ViewerError.d.ts +0 -0
  161. /package/dist/{src/fonts → fonts}/index.d.ts +0 -0
  162. /package/dist/{src/methods → methods}/analytics.d.ts +0 -0
  163. /package/dist/{src/methods → methods}/ar.d.ts +0 -0
  164. /package/dist/{src/methods → methods}/config.d.ts +0 -0
  165. /package/dist/{src/methods → methods}/init.d.ts +0 -0
  166. /package/dist/{src/methods → methods}/qrCode.d.ts +0 -0
  167. /package/dist/{src/methods → methods}/types.d.ts +0 -0
  168. /package/dist/{src/methods → methods}/viewer.d.ts +0 -0
  169. /package/dist/{src/screens → screens}/Fallback/index.d.ts +0 -0
  170. /package/dist/{src/screens → screens}/Social/index.d.ts +0 -0
  171. /package/dist/{src/services → services}/analytics.d.ts +0 -0
  172. /package/dist/{src/services → services}/constants.d.ts +0 -0
  173. /package/dist/{src/services → services}/cookies.d.ts +0 -0
  174. /package/dist/{src/services → services}/customer.d.ts +0 -0
  175. /package/dist/{src/services → services}/customization.d.ts +0 -0
  176. /package/dist/{src/services → services}/product.d.ts +0 -0
  177. /package/dist/{src/services → services}/requests.d.ts +0 -0
  178. /package/dist/{src/types → types}/Viewer.d.ts +0 -0
  179. /package/dist/{src/types → types}/index.d.ts +0 -0
  180. /package/dist/{src/utils → utils}/sortCustomization.d.ts +0 -0
@@ -0,0 +1,219 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import Analytics, { dimensions, webxrDimensions, webxrEvents, events, fingerprint, } from '@r2u/analytics';
11
+ import { v4 } from 'uuid';
12
+ import state from '../state';
13
+ const placements = {
14
+ arLink: 'ar_link',
15
+ arModelViewer: 'ar_model_viewer',
16
+ cta: 'cta',
17
+ };
18
+ const arLink = {
19
+ componentDidMount: () => {
20
+ return state.analytics.send({
21
+ event: events.impression,
22
+ data: { [dimensions.placement]: placements.arLink },
23
+ scope: 'page',
24
+ });
25
+ },
26
+ onClick: () => {
27
+ return state.analytics.send({
28
+ event: events.click,
29
+ data: { [dimensions.placement]: placements.arLink },
30
+ });
31
+ },
32
+ onFallback: () => {
33
+ return state.analytics.send({
34
+ event: events.fallback,
35
+ data: { [dimensions.placement]: placements.arLink },
36
+ });
37
+ },
38
+ onLike: () => {
39
+ return state.analytics.send({
40
+ event: events.like,
41
+ data: { [dimensions.placement]: placements.arLink },
42
+ });
43
+ },
44
+ onDislike: () => {
45
+ return state.analytics.send({
46
+ event: events.dislike,
47
+ data: { [dimensions.placement]: placements.arLink },
48
+ });
49
+ },
50
+ onSessionTimeCollect: (time) => {
51
+ return state.analytics.send({
52
+ event: events.interaction_duration,
53
+ eventCount: time,
54
+ data: { [dimensions.placement]: placements.arLink },
55
+ });
56
+ },
57
+ };
58
+ const arModelViewer = {
59
+ componentDidMount: () => {
60
+ return state.analytics.send({
61
+ event: events.impression,
62
+ data: { [dimensions.placement]: placements.arModelViewer },
63
+ scope: 'page',
64
+ });
65
+ },
66
+ onClick: () => {
67
+ return state.analytics.send({
68
+ event: events.click,
69
+ data: { [dimensions.placement]: placements.arModelViewer },
70
+ });
71
+ },
72
+ onSessionTimeCollect: (time) => {
73
+ return state.analytics.send({
74
+ event: events.interaction_duration,
75
+ eventCount: time,
76
+ data: { [dimensions.placement]: placements.arModelViewer },
77
+ });
78
+ },
79
+ };
80
+ const webXR = {
81
+ onSessionStart: () => {
82
+ return state.analytics.webxrSend({
83
+ webxrEvent: webxrEvents.session_start,
84
+ });
85
+ },
86
+ onSessionEnd: () => {
87
+ return state.analytics.webxrSend({
88
+ webxrEvent: webxrEvents.session_end,
89
+ });
90
+ },
91
+ setSession: () => {
92
+ state.analytics.webxrSet(webxrDimensions.session_id, v4());
93
+ },
94
+ setCompatible: (compatible) => {
95
+ state.analytics.webxrSet(webxrDimensions.compatible, `${compatible}`);
96
+ },
97
+ onSceneViewerFallback: () => {
98
+ return Promise.all([
99
+ state.analytics.webxrSend({
100
+ webxrEvent: webxrEvents.scene_viewer_fallback,
101
+ }),
102
+ state.analytics.send({
103
+ event: events.fallback,
104
+ data: { [dimensions.placement]: placements.arLink },
105
+ context: 'webxr',
106
+ }),
107
+ ]);
108
+ },
109
+ onFallback: () => {
110
+ return state.analytics.webxrSend({
111
+ webxrEvent: webxrEvents.fallback,
112
+ });
113
+ },
114
+ setPlaneMapped: () => {
115
+ state.analytics.webxrSet(webxrDimensions.plane_mapped, new Date().toISOString());
116
+ },
117
+ setObjectPlaced: () => {
118
+ state.analytics.webxrSet(webxrDimensions.object_placed, new Date().toISOString());
119
+ },
120
+ setTranslateInstructions: () => {
121
+ state.analytics.webxrSet(webxrDimensions.translate_instructions, new Date().toISOString());
122
+ },
123
+ setRotateInstructions: () => {
124
+ state.analytics.webxrSet(webxrDimensions.rotate_instructions, new Date().toISOString());
125
+ },
126
+ setFirstTranslation: () => {
127
+ state.analytics.webxrSet(webxrDimensions.first_translation, new Date().toISOString());
128
+ },
129
+ setFirstRotation: () => {
130
+ state.analytics.webxrSet(webxrDimensions.first_rotation, new Date().toISOString());
131
+ },
132
+ setReset: () => {
133
+ state.analytics.webxrSet(webxrDimensions.reset, new Date().toISOString());
134
+ },
135
+ onShare: () => {
136
+ return state.analytics.webxrSend({
137
+ webxrEvent: webxrEvents.share,
138
+ });
139
+ },
140
+ onExit: () => {
141
+ return state.analytics.webxrSend({
142
+ webxrEvent: webxrEvents.exit,
143
+ });
144
+ },
145
+ onLike: () => {
146
+ return state.analytics.webxrSend({
147
+ webxrEvent: webxrEvents.like,
148
+ });
149
+ },
150
+ onDislike: () => {
151
+ return state.analytics.webxrSend({
152
+ webxrEvent: webxrEvents.dislike,
153
+ });
154
+ },
155
+ onCallToAction: () => {
156
+ return state.analytics.webxrSend({
157
+ webxrEvent: webxrEvents.call_to_action,
158
+ });
159
+ },
160
+ onTranslation: () => {
161
+ return state.analytics.webxrSend({
162
+ webxrEvent: webxrEvents.translation,
163
+ });
164
+ },
165
+ onRotation: () => {
166
+ return state.analytics.webxrSend({
167
+ webxrEvent: webxrEvents.rotation,
168
+ });
169
+ },
170
+ };
171
+ const cta = {
172
+ onClick: () => {
173
+ return state.analytics.send({
174
+ event: events.click,
175
+ data: { [dimensions.placement]: placements.cta },
176
+ context: 'cart',
177
+ });
178
+ },
179
+ };
180
+ const setSku = (sku) => {
181
+ state.analytics.set(dimensions.sku, sku);
182
+ };
183
+ const setManufacturerId = (manufacturerId) => {
184
+ state.analytics.set(dimensions.manufacturer_id, manufacturerId);
185
+ };
186
+ const isActive3D = (isActive) => {
187
+ state.analytics.set(dimensions.is_active_3d, `${isActive}`);
188
+ state.analytics.send({
189
+ event: events.product_page_view,
190
+ });
191
+ };
192
+ const setExperimentId = (experimentId) => {
193
+ state.analytics.set(dimensions.experiment_id, experimentId);
194
+ };
195
+ const setVariationId = (variationId) => {
196
+ state.analytics.set(dimensions.variation_id, variationId);
197
+ };
198
+ const getFingerprint = () => __awaiter(void 0, void 0, void 0, function* () {
199
+ const userFingerprint = yield fingerprint();
200
+ state.analytics.set(dimensions.fingerprint, userFingerprint);
201
+ return userFingerprint;
202
+ });
203
+ const getAnalytics = ({ client, dataLayerIntegration, sessionDurationMinutes, info = {}, }) => __awaiter(void 0, void 0, void 0, function* () {
204
+ const params = {
205
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
206
+ version: process.env.REACT_APP_VERSION,
207
+ gcpAnalyticsUrl: 'https://us-central1-r2u-analytics.cloudfunctions.net/reportEvent',
208
+ webxrGcpAnalyticsUrl: 'https://us-central1-r2u-analytics.cloudfunctions.net/reportWebXREvent',
209
+ debug: !!new URLSearchParams(window.location.search).get('realidade-aumentada-debug'),
210
+ sessionDurationMinutes,
211
+ dataLayerIntegration,
212
+ };
213
+ const analytics = new Analytics(params, Object.assign(Object.assign({}, info), { [dimensions.client]: client }));
214
+ yield analytics.init();
215
+ return analytics;
216
+ });
217
+ export { arLink, arModelViewer, webXR, cta, setExperimentId, setVariationId, setSku, setManufacturerId, isActive3D, getFingerprint, };
218
+ export default getAnalytics;
219
+ //# sourceMappingURL=analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/services/analytics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,65 @@
1
+ /* @license
2
+ * Copyright 2019 Google LLC. All Rights Reserved.
3
+ * Licensed under the Apache License, Version 2.0 (the 'License');
4
+ * you may not use this file except in compliance with the License.
5
+ * You may obtain a copy of the License at
6
+ *
7
+ * http://www.apache.org/licenses/LICENSE-2.0
8
+ *
9
+ * Unless required by applicable law or agreed to in writing, software
10
+ * distributed under the License is distributed on an 'AS IS' BASIS,
11
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ * See the License for the specific language governing permissions and
13
+ * limitations under the License.
14
+ */
15
+ /* eslint-disable */
16
+ // NOTE(cdata): The HAS_WEBXR_* constants can be enabled in Chrome by turning on
17
+ // the appropriate flags. However, just because we have the API does not
18
+ // guarantee that AR will work.
19
+ export const HAS_WEBXR_DEVICE_API = navigator.xr != null &&
20
+ self.XRSession != null &&
21
+ navigator.xr.isSessionSupported != null;
22
+ export const HAS_WEBXR_HIT_TEST_API = HAS_WEBXR_DEVICE_API &&
23
+ self.XRSession.prototype.requestHitTestSource;
24
+ export const HAS_RESIZE_OBSERVER = self.ResizeObserver != null;
25
+ export const HAS_INTERSECTION_OBSERVER = self.IntersectionObserver != null;
26
+ export const IS_WEBXR_AR_CANDIDATE = HAS_WEBXR_HIT_TEST_API;
27
+ export const IS_MOBILE = (() => {
28
+ const userAgent = navigator.userAgent || navigator.vendor || self.opera;
29
+ let check = false;
30
+ // eslint-disable-next-line
31
+ if (/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(userAgent) ||
32
+ /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(userAgent.substr(0, 4))) {
33
+ check = true;
34
+ }
35
+ return check;
36
+ })();
37
+ export const IS_CHROMEOS = /\bCrOS\b/.test(navigator.userAgent);
38
+ export const IS_ANDROID = /android/i.test(navigator.userAgent);
39
+ // Prior to iOS 13, detecting iOS Safari was relatively straight-forward.
40
+ // As of iOS 13, Safari on iPad (in its default configuration) reports the same
41
+ // user-agent string as Safari on desktop MacOS. Strictly speaking, we only care
42
+ // about iOS for the purposes if selecting for cases where Quick Look is known
43
+ // to be supported. However, for API correctness purposes, we must rely on
44
+ // known, detectable signals to distinguish iOS Safari from MacOS Safari. At the
45
+ // time of this writing, there are no non-iOS/iPadOS Apple devices with
46
+ // multi-touch displays.
47
+ // @see https://stackoverflow.com/questions/57765958/how-to-detect-ipad-and-ipad-os-version-in-ios-13-and-up
48
+ // @see https://forums.developer.apple.com/thread/119186
49
+ // @see https://github.com/google/model-viewer/issues/758
50
+ export const IS_IOS = (/iPad|iPhone|iPod/.test(navigator.userAgent) && !self.MSStream) ||
51
+ (navigator.platform === 'MacIntel' && navigator.maxTouchPoints > 1);
52
+ export const IS_AR_QUICKLOOK_CANDIDATE = (() => {
53
+ const tempAnchor = document.createElement('a');
54
+ return Boolean(tempAnchor.relList &&
55
+ tempAnchor.relList.supports &&
56
+ tempAnchor.relList.supports('ar'));
57
+ })();
58
+ // @see https://developer.chrome.com/multidevice/user-agent
59
+ export const IS_SAFARI = /Safari\//.test(navigator.userAgent);
60
+ export const IS_FIREFOX = /firefox/i.test(navigator.userAgent);
61
+ export const IS_OCULUS = /OculusBrowser/.test(navigator.userAgent);
62
+ export const IS_IOS_CHROME = IS_IOS && /CriOS\//.test(navigator.userAgent);
63
+ export const IS_IOS_SAFARI = IS_IOS && IS_SAFARI;
64
+ export const IS_SCENEVIEWER_CANDIDATE = IS_ANDROID && !IS_FIREFOX && !IS_OCULUS;
65
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/services/constants.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export function getActionAlreadySeen(action) {
2
+ const key = `r2u-webxr-seen-${action}`;
3
+ const alreadyOpened = Boolean(JSON.parse(localStorage.getItem(key) || 'false'));
4
+ return alreadyOpened;
5
+ }
6
+ export function setActionAlreadySeen(action) {
7
+ const key = `r2u-webxr-seen-${action}`;
8
+ localStorage.setItem(key, JSON.stringify(true));
9
+ }
10
+ export function getScreenAlreadyOpened(screen) {
11
+ const key = `r2u-ar-opened-${screen}`;
12
+ const alreadyOpened = Boolean(JSON.parse(localStorage.getItem(key) || 'false'));
13
+ return alreadyOpened;
14
+ }
15
+ export function setScreenAlreadyOpened(screen) {
16
+ const key = `r2u-ar-opened-${screen}`;
17
+ localStorage.setItem(key, JSON.stringify(true));
18
+ }
19
+ //# sourceMappingURL=cookies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cookies.js","sourceRoot":"","sources":["../../src/services/cookies.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,MAA8B;IACjE,MAAM,GAAG,GAAG,kBAAkB,MAAM,EAAE,CAAA;IACtC,MAAM,aAAa,GAAG,OAAO,CAC3B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CACjD,CAAA;IACD,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA8B;IACjE,MAAM,GAAG,GAAG,kBAAkB,MAAM,EAAE,CAAA;IACtC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;AACjD,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAmC;IAEnC,MAAM,GAAG,GAAG,iBAAiB,MAAM,EAAE,CAAA;IACrC,MAAM,aAAa,GAAG,OAAO,CAC3B,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CACjD,CAAA;IACD,OAAO,aAAa,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAmC;IAEnC,MAAM,GAAG,GAAG,iBAAiB,MAAM,EAAE,CAAA;IACrC,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;AACjD,CAAC"}
@@ -0,0 +1,17 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { get } from './requests';
11
+ export function getCustomer(id) {
12
+ return __awaiter(this, void 0, void 0, function* () {
13
+ const customer = (yield get(`/customers/${id}`));
14
+ return customer;
15
+ });
16
+ }
17
+ //# sourceMappingURL=customer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customer.js","sourceRoot":"","sources":["../../src/services/customer.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAGhC,MAAM,UAAgB,WAAW,CAAC,EAAU;;QAC1C,MAAM,QAAQ,GAAG,CAAC,MAAM,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAa,CAAA;QAC5D,OAAO,QAAQ,CAAA;IACjB,CAAC;CAAA"}
@@ -0,0 +1,73 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { get, post } from './requests';
11
+ import state from 'src/state';
12
+ export function getCustomizedModel(sku, customization) {
13
+ return __awaiter(this, void 0, void 0, function* () {
14
+ try {
15
+ const url = `/viewer-customization/customer/${state.customer._id}/products/${sku}?customization=${encodeURI(JSON.stringify(customization))}`;
16
+ const customizedModel = (yield get(url)) || {};
17
+ return customizedModel;
18
+ }
19
+ catch (e) {
20
+ console.error(`Error on getting customized model: ${e.message}`);
21
+ return Promise.reject(e);
22
+ }
23
+ });
24
+ }
25
+ export function uploadCustomization(sku, customization, customizationModel) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ try {
28
+ const url = `/viewer-customization/customer/${state.customer._id}/products/${sku}/upload-customization-data?customization=${encodeURI(JSON.stringify(customization))}`;
29
+ const signedUpload = (yield get(url));
30
+ const file = new File([customizationModel], signedUpload.filename);
31
+ const formData = new FormData();
32
+ Object.keys(signedUpload.fields).forEach((field) => formData.append(field, signedUpload.fields[field]));
33
+ formData.append('file', file);
34
+ yield fetch(signedUpload.url, {
35
+ method: 'POST',
36
+ body: formData,
37
+ });
38
+ return signedUpload.url.concat(signedUpload.fields['key']);
39
+ }
40
+ catch (e) {
41
+ console.error(`Error on upload customization: ${e.message}`);
42
+ return Promise.reject(e);
43
+ }
44
+ });
45
+ }
46
+ export function requestConversion(sku, filename) {
47
+ return __awaiter(this, void 0, void 0, function* () {
48
+ try {
49
+ const url = `/viewer-customization/customers/${state.customer._id}/products/${sku}/convert`;
50
+ const response = yield post(url, { filename });
51
+ return response;
52
+ }
53
+ catch (e) {
54
+ console.error(`Error on request sku conversion: ${e.message}`);
55
+ return Promise.reject(e);
56
+ }
57
+ });
58
+ }
59
+ export function retryCheckConversion(jobId) {
60
+ return __awaiter(this, void 0, void 0, function* () {
61
+ try {
62
+ const { status } = (yield get(`/job-status/${jobId}`));
63
+ if (['waiting', 'processing'].includes(status))
64
+ return retryCheckConversion(jobId);
65
+ return status;
66
+ }
67
+ catch (e) {
68
+ console.error(`Error on retry check conversion: ${e.message}`);
69
+ return Promise.reject(e);
70
+ }
71
+ });
72
+ }
73
+ //# sourceMappingURL=customization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customization.js","sourceRoot":"","sources":["../../src/services/customization.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { get } from './requests';
11
+ import state from '../state';
12
+ import querystring from 'querystring';
13
+ export default function (sku) {
14
+ return __awaiter(this, void 0, void 0, function* () {
15
+ if (state.products[sku])
16
+ return Promise.resolve(state.products[sku]);
17
+ const query = querystring.encode({
18
+ 'product.sku': sku,
19
+ 'asset.types': ['GLB', 'USDZ'].join(','),
20
+ 'product_review.status': 'RUNNING',
21
+ });
22
+ const [customerProduct] = (yield get(`/customers/${state.customer._id}/products/assets?${query}`));
23
+ if (!customerProduct)
24
+ throw new Error('R2U - SKU not found');
25
+ const assets = customerProduct.assets || [];
26
+ const productReviews = customerProduct.product_reviews || [];
27
+ const glbAsset = assets.find((asset) => asset.type === 'GLB');
28
+ const usdzAsset = assets.find((asset) => asset.type === 'USDZ');
29
+ const product = {
30
+ glb: glbAsset ? glbAsset.url : '',
31
+ usdz: usdzAsset ? usdzAsset.url : '',
32
+ isActive: productReviews.length > 0,
33
+ name: customerProduct.name,
34
+ placement: customerProduct.placement || 'floor',
35
+ resize: customerProduct.resize || false,
36
+ sound: customerProduct.soundUrl,
37
+ modelId: customerProduct.modelId,
38
+ manufacturerId: customerProduct.manufacturerId,
39
+ pdpUrl: customerProduct.pdpUrl,
40
+ hdri: customerProduct.hdri,
41
+ exposure: customerProduct.exposure,
42
+ bloom: customerProduct.bloom,
43
+ viewerOptions: customerProduct.viewerOptions || {},
44
+ };
45
+ state.products[sku] = product;
46
+ return product;
47
+ });
48
+ }
49
+ //# sourceMappingURL=product.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"product.js","sourceRoot":"","sources":["../../src/services/product.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAChC,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,WAAW,MAAM,aAAa,CAAA;AA8CrC,MAAM,CAAC,OAAO,WAAiB,GAAW;;QACxC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAA;QAEpE,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;YAC/B,aAAa,EAAE,GAAG;YAClB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YACxC,uBAAuB,EAAE,SAAS;SACnC,CAAC,CAAA;QACF,MAAM,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,GAAG,CAClC,cAAc,KAAK,CAAC,QAAQ,CAAC,GAAG,oBAAoB,KAAK,EAAE,CAC5D,CAAsB,CAAA;QAEvB,IAAI,CAAC,eAAe;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QAE5D,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,IAAI,EAAE,CAAA;QAC3C,MAAM,cAAc,GAAG,eAAe,CAAC,eAAe,IAAI,EAAE,CAAA;QAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;QACpE,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAY,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;QAEtE,MAAM,OAAO,GAAY;YACvB,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACjC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACpC,QAAQ,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC;YACnC,IAAI,EAAE,eAAe,CAAC,IAAI;YAC1B,SAAS,EAAE,eAAe,CAAC,SAAS,IAAI,OAAO;YAC/C,MAAM,EAAE,eAAe,CAAC,MAAM,IAAI,KAAK;YACvC,KAAK,EAAE,eAAe,CAAC,QAAQ;YAC/B,OAAO,EAAE,eAAe,CAAC,OAAO;YAChC,cAAc,EAAE,eAAe,CAAC,cAAc;YAC9C,MAAM,EAAE,eAAe,CAAC,MAAM;YAC9B,IAAI,EAAE,eAAe,CAAC,IAAI;YAC1B,QAAQ,EAAE,eAAe,CAAC,QAAQ;YAClC,KAAK,EAAE,eAAe,CAAC,KAAK;YAC5B,aAAa,EAAE,eAAe,CAAC,aAAa,IAAK,EAAoB;SACtE,CAAA;QAED,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,CAAA;QAE7B,OAAO,OAAO,CAAA;IAChB,CAAC;CAAA"}
@@ -0,0 +1,55 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import state from '../state';
11
+ const endpoint = process.env.NODE_ENV === 'development'
12
+ ? 'https://dev-api.r2u.io'
13
+ : 'https://api.r2u.io';
14
+ export function get(path) {
15
+ return __awaiter(this, void 0, void 0, function* () {
16
+ const headers = {};
17
+ if (state.refreshCache) {
18
+ headers['Cache-Control'] = 'max-age=0';
19
+ }
20
+ const response = yield fetch(`${endpoint}${path}`, {
21
+ method: 'get',
22
+ headers,
23
+ });
24
+ return response.json();
25
+ });
26
+ }
27
+ export function post(path, body) {
28
+ return __awaiter(this, void 0, void 0, function* () {
29
+ const response = yield fetch(`${endpoint}${path}`, {
30
+ method: 'POST',
31
+ body: JSON.stringify(body),
32
+ });
33
+ return response.json();
34
+ });
35
+ }
36
+ export function fileExists(url) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ try {
39
+ const { status } = yield fetch(url, {
40
+ method: 'HEAD',
41
+ });
42
+ return status === 200;
43
+ }
44
+ catch (err) {
45
+ console.error(err);
46
+ return false;
47
+ }
48
+ });
49
+ }
50
+ export const getRoute = () => {
51
+ return process.env.NODE_ENV === 'development'
52
+ ? 'http://localhost:8080'
53
+ : 'https://sdk.r2u.io';
54
+ };
55
+ //# sourceMappingURL=requests.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"requests.js","sourceRoot":"","sources":["../../src/services/requests.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,KAAK,MAAM,UAAU,CAAA;AAE5B,MAAM,QAAQ,GACZ,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;IACpC,CAAC,CAAC,wBAAwB;IAC1B,CAAC,CAAC,oBAAoB,CAAA;AAE1B,MAAM,UAAgB,GAAG,CAAC,IAAY;;QACpC,MAAM,OAAO,GAAgB,EAAE,CAAA;QAC/B,IAAI,KAAK,CAAC,YAAY,EAAE;YACtB,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW,CAAA;SACvC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,GAAG,IAAI,EAAE,EAAE;YACjD,MAAM,EAAE,KAAK;YACb,OAAO;SACR,CAAC,CAAA;QACF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;CAAA;AAED,MAAM,UAAgB,IAAI,CAAC,IAAY,EAAE,IAAa;;QACpD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,GAAG,IAAI,EAAE,EAAE;YACjD,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;QAEF,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC;CAAA;AAED,MAAM,UAAgB,UAAU,CAAC,GAAW;;QAC1C,IAAI;YACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAClC,MAAM,EAAE,MAAM;aACf,CAAC,CAAA;YACF,OAAO,MAAM,KAAK,GAAG,CAAA;SACtB;QAAC,OAAO,GAAG,EAAE;YACZ,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAClB,OAAO,KAAK,CAAA;SACb;IACH,CAAC;CAAA;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAW,EAAE;IACnC,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;QAC3C,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,oBAAoB,CAAA;AAC1B,CAAC,CAAA"}
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkR2U=self.webpackChunkR2U||[]).push([[465],{2587:function(e){function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,n,i,r){n=n||"&",i=i||"=";var a={};if("string"!=typeof e||0===e.length)return a;var o=/\+/g;e=e.split(n);var s=1e3;r&&"number"==typeof r.maxKeys&&(s=r.maxKeys);var c=e.length;s>0&&c>s&&(c=s);for(var l=0;l<c;++l){var u,d,p,f,v=e[l].replace(o,"%20"),y=v.indexOf(i);y>=0?(u=v.substr(0,y),d=v.substr(y+1)):(u=v,d=""),p=decodeURIComponent(u),f=decodeURIComponent(d),t(a,p)?Array.isArray(a[p])?a[p].push(f):a[p]=[a[p],f]:a[p]=f}return a}},2361:function(e){var t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,n,i,r){return n=n||"&",i=i||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(r){var a=encodeURIComponent(t(r))+i;return Array.isArray(e[r])?e[r].map((function(e){return a+encodeURIComponent(t(e))})).join(n):a+encodeURIComponent(t(e[r]))})).filter(Boolean).join(n):r?encodeURIComponent(t(r))+i+encodeURIComponent(t(e)):""}},7673:function(e,t,n){t.decode=t.parse=n(2587),t.encode=t.stringify=n(2361)},6025:function(e,t,n){n.r(t);var i=n(2367),r=n(7523),a=n(7374),o=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function o(e){try{c(i.next(e))}catch(e){a(e)}}function s(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((i=i.apply(e,t||[])).next())}))};t.default={isActive:function(e){return o(this,void 0,void 0,(function*(){if(!i.Z.init)return Promise.reject(new Error("R2U - Not initialized"));if(!e)return Promise.reject(new Error("R2U - Missing SKU"));a.hN(e);try{const{isActive:t,manufacturerId:n}=yield(0,r.Z)(e);return n&&a.lY(n),a.G0(t),t}catch(e){return!1}}))},getData:function(e){return o(this,void 0,void 0,(function*(){if(!i.Z.init)return Promise.reject(new Error("R2U - Not initialized"));if(!e)return Promise.reject(new Error("R2U - Missing SKU"));return yield(0,r.Z)(e)}))}}},7374:function(e,t,n){n.d(t,{J1:function(){return u},E9:function(){return d},XH:function(){return p},ar:function(){return f},KN:function(){return w},fQ:function(){return b},hN:function(){return v},lY:function(){return y},G0:function(){return m},fm:function(){return g}});var i=n(2085),r=n(5877),a=n(2367),o=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function o(e){try{c(i.next(e))}catch(e){a(e)}}function s(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((i=i.apply(e,t||[])).next())}))};const s="ar_link",c="ar_model_viewer",l="cta",u={componentDidMount:()=>a.Z.analytics.send({event:i.U3.impression,data:{[i.MB.placement]:s},scope:"page"}),onClick:()=>a.Z.analytics.send({event:i.U3.click,data:{[i.MB.placement]:s}}),onFallback:()=>a.Z.analytics.send({event:i.U3.fallback,data:{[i.MB.placement]:s}}),onLike:()=>a.Z.analytics.send({event:i.U3.like,data:{[i.MB.placement]:s}}),onDislike:()=>a.Z.analytics.send({event:i.U3.dislike,data:{[i.MB.placement]:s}}),onSessionTimeCollect:e=>a.Z.analytics.send({event:i.U3.interaction_duration,eventCount:e,data:{[i.MB.placement]:s}})},d={componentDidMount:()=>a.Z.analytics.send({event:i.U3.impression,data:{[i.MB.placement]:c},scope:"page"}),onClick:()=>a.Z.analytics.send({event:i.U3.click,data:{[i.MB.placement]:c}}),onSessionTimeCollect:e=>a.Z.analytics.send({event:i.U3.interaction_duration,eventCount:e,data:{[i.MB.placement]:c}})},p={onSessionStart:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.session_start}),onSessionEnd:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.session_end}),setSession:()=>{a.Z.analytics.webxrSet(i.D1.session_id,(0,r.v4)())},setCompatible:e=>{a.Z.analytics.webxrSet(i.D1.compatible,`${e}`)},onSceneViewerFallback:()=>Promise.all([a.Z.analytics.webxrSend({webxrEvent:i.Ui.scene_viewer_fallback}),a.Z.analytics.send({event:i.U3.fallback,data:{[i.MB.placement]:s},context:"webxr"})]),onFallback:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.fallback}),setPlaneMapped:()=>{a.Z.analytics.webxrSet(i.D1.plane_mapped,(new Date).toISOString())},setObjectPlaced:()=>{a.Z.analytics.webxrSet(i.D1.object_placed,(new Date).toISOString())},setTranslateInstructions:()=>{a.Z.analytics.webxrSet(i.D1.translate_instructions,(new Date).toISOString())},setRotateInstructions:()=>{a.Z.analytics.webxrSet(i.D1.rotate_instructions,(new Date).toISOString())},setFirstTranslation:()=>{a.Z.analytics.webxrSet(i.D1.first_translation,(new Date).toISOString())},setFirstRotation:()=>{a.Z.analytics.webxrSet(i.D1.first_rotation,(new Date).toISOString())},setReset:()=>{a.Z.analytics.webxrSet(i.D1.reset,(new Date).toISOString())},onShare:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.share}),onExit:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.exit}),onLike:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.like}),onDislike:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.dislike}),onCallToAction:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.call_to_action}),onTranslation:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.translation}),onRotation:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.rotation})},f={onClick:()=>a.Z.analytics.send({event:i.U3.click,data:{[i.MB.placement]:l},context:"cart"})},v=e=>{a.Z.analytics.set(i.MB.sku,e)},y=e=>{a.Z.analytics.set(i.MB.manufacturer_id,e)},m=e=>{a.Z.analytics.set(i.MB.is_active_3d,`${e}`),a.Z.analytics.send({event:i.U3.product_page_view})},w=e=>{a.Z.analytics.set(i.MB.experiment_id,e)},b=e=>{a.Z.analytics.set(i.MB.variation_id,e)},g=()=>o(void 0,void 0,void 0,(function*(){const e=yield(0,i.cE)();return a.Z.analytics.set(i.MB.fingerprint,e),e}));t.ZP=({client:e,dataLayerIntegration:t,sessionDurationMinutes:n,info:r={}})=>o(void 0,void 0,void 0,(function*(){const a={version:"6.22.0",gcpAnalyticsUrl:"https://us-central1-r2u-analytics.cloudfunctions.net/reportEvent",webxrGcpAnalyticsUrl:"https://us-central1-r2u-analytics.cloudfunctions.net/reportWebXREvent",debug:!!new URLSearchParams(window.location.search).get("realidade-aumentada-debug"),sessionDurationMinutes:n,dataLayerIntegration:t},o=new i.ZP(a,Object.assign(Object.assign({},r),{[i.MB.client]:e}));return yield o.init(),o}))},7523:function(e,t,n){n.d(t,{Z:function(){return s}});var i=n(2297),r=n(2367),a=n(7673),o=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function o(e){try{c(i.next(e))}catch(e){a(e)}}function s(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((i=i.apply(e,t||[])).next())}))};function s(e){return o(this,void 0,void 0,(function*(){if(r.Z.products[e])return Promise.resolve(r.Z.products[e]);const t=a.encode({"product.sku":e,"asset.types":["GLB","USDZ"].join(","),"product_review.status":"RUNNING"}),[n]=yield(0,i.U2)(`/customers/${r.Z.customer._id}/products/assets?${t}`);if(!n)throw new Error("R2U - SKU not found");const o=n.assets||[],s=n.product_reviews||[],c=o.find((e=>"GLB"===e.type)),l=o.find((e=>"USDZ"===e.type)),u={glb:c?c.url:"",usdz:l?l.url:"",isActive:s.length>0,name:n.name,placement:n.placement||"floor",resize:n.resize||!1,sound:n.soundUrl,modelId:n.modelId,manufacturerId:n.manufacturerId,pdpUrl:n.pdpUrl,hdri:n.hdri,exposure:n.exposure,bloom:n.bloom,viewerOptions:n.viewerOptions||{}};return r.Z.products[e]=u,u}))}},2297:function(e,t,n){n.d(t,{U2:function(){return o},v_:function(){return s},Bv:function(){return c}});var i=n(2367),r=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function o(e){try{c(i.next(e))}catch(e){a(e)}}function s(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(o,s)}c((i=i.apply(e,t||[])).next())}))};const a="https://api.r2u.io";function o(e){return r(this,void 0,void 0,(function*(){const t={};i.Z.refreshCache&&(t["Cache-Control"]="max-age=0");return(yield fetch(`${a}${e}`,{method:"get",headers:t})).json()}))}function s(e,t){return r(this,void 0,void 0,(function*(){return(yield fetch(`${a}${e}`,{method:"POST",body:JSON.stringify(t)})).json()}))}const c=()=>"https://sdk.r2u.io"},2367:function(e,t){const n={init:!1,customer:{_id:"",slug:"",language:"en",hdri:null,exposure:null,bloom:null,experiments:{overrides:{}},viewerOptions:{}},analytics:{set:(e,t)=>{},send:({event:e,data:t,scope:n})=>Promise.resolve()},products:{},hasAutoOpenedAR:!1,growthbook:{},refreshCache:!1};t.Z=n},4147:function(e){e.exports=JSON.parse('{"name":"@r2u/javascript-ar-sdk","version":"6.22.0","main":"dist/index.js","unpkg":"dist/index.js","types":"dist/index.d.ts","repository":"https://github.com/r2u-io/javascript-ar-sdk","files":["dist"],"scripts":{"dev":"yarn build:dev && webpack serve --mode=development","build:dev":"REACT_APP_VERSION=$(jq -r \\".version\\" package.json) webpack --mode=development","build":"REACT_APP_VERSION=$(jq -r \\".version\\" package.json) webpack --mode=production","clean":"rm -rf dist/ public/dist/","test":"jest --config ./jest.config.js","stage":"yarn build:dev && gsutil -m cp -R ./public gs://r2u-integrations-bucket/_staging/sdk/","prettier":"prettier --write src","lint":"eslint \\"./src/**/*.{js,ts,tsx}\\"","eject":"rescripts eject"},"peerDependencies":{"react":"^16.13.1","react-dom":"^16.13.1"},"dependencies":{"@r2u/analytics":"^4.3.3","@r2u/react-ar-components":"^5.4.16","@r2u/viewer":"^1.12.3","@types/react-slick":"^0.23.10","i18next":"^20.2.1","i18next-chained-backend":"^2.1.0","i18next-http-backend":"^1.2.1","i18next-localstorage-backend":"^3.1.2","qrcode.react":"^1.0.1","querystring":"^0.2.0","react":"^17.0.2","react-dom":"^17.0.2","react-i18next":"^11.8.13","react-shadow":"^19.0.2","react-slick":"^0.29.0","styled-components":"^5.2.3"},"devDependencies":{"@fingerprintjs/fingerprintjs":"^3.3.0","@growthbook/growthbook":"^0.12.0","@types/jest":"^26.0.15","@types/node":"^13.11.1","@types/qrcode.react":"^1.0.1","@types/react":"^16.9.33","@types/react-dom":"^16.9.6","@types/styled-components":"^5.1.9","@typescript-eslint/eslint-plugin":"^2.3.1","@typescript-eslint/parser":"^2.3.1","eslint":"^7.22.0","eslint-config-prettier":"^6.12.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jest":"^22.17.0","eslint-plugin-node":"^8.0.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-promise":"^4.1.1","eslint-plugin-react":"^7.14.3","eslint-plugin-standard":"^4.0.0","file-loader":"^6.2.0","jest":"^24.9.0","prettier":"^2.1.2","process":"^0.11.10","three":"^0.131.2","ts-jest":"^26.4.4","ts-loader":"^8.0.17","tsconfig-paths-webpack-plugin":"^3.5.1","typescript":"^3.8.3","util":"^0.12.3","webpack":"^5.24.3","webpack-bundle-analyzer":"^4.4.0","webpack-cli":"^4.5.0","webpack-dev-server":"3.10.3"},"browserslist":{"production":[">0.2%","not dead","not op_mini all"],"development":["last 1 chrome version","last 1 firefox version","last 1 safari version"]}}')}}]);
1
+ "use strict";(self.webpackChunkR2U=self.webpackChunkR2U||[]).push([[465],{2587:function(e){function t(e,t){return Object.prototype.hasOwnProperty.call(e,t)}e.exports=function(e,n,i,r){n=n||"&",i=i||"=";var a={};if("string"!=typeof e||0===e.length)return a;var s=/\+/g;e=e.split(n);var o=1e3;r&&"number"==typeof r.maxKeys&&(o=r.maxKeys);var c=e.length;o>0&&c>o&&(c=o);for(var l=0;l<c;++l){var u,d,p,f,v=e[l].replace(s,"%20"),y=v.indexOf(i);y>=0?(u=v.substr(0,y),d=v.substr(y+1)):(u=v,d=""),p=decodeURIComponent(u),f=decodeURIComponent(d),t(a,p)?Array.isArray(a[p])?a[p].push(f):a[p]=[a[p],f]:a[p]=f}return a}},2361:function(e){var t=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};e.exports=function(e,n,i,r){return n=n||"&",i=i||"=",null===e&&(e=void 0),"object"==typeof e?Object.keys(e).map((function(r){var a=encodeURIComponent(t(r))+i;return Array.isArray(e[r])?e[r].map((function(e){return a+encodeURIComponent(t(e))})).join(n):a+encodeURIComponent(t(e[r]))})).filter(Boolean).join(n):r?encodeURIComponent(t(r))+i+encodeURIComponent(t(e)):""}},7673:function(e,t,n){t.decode=t.parse=n(2587),t.encode=t.stringify=n(2361)},6025:function(e,t,n){n.r(t);var i=n(2367),r=n(7523),a=n(7374),s=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function s(e){try{c(i.next(e))}catch(e){a(e)}}function o(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}c((i=i.apply(e,t||[])).next())}))};t.default={isActive:function(e){return s(this,void 0,void 0,(function*(){if(!i.Z.init)return Promise.reject(new Error("R2U - Not initialized"));if(!e)return Promise.reject(new Error("R2U - Missing SKU"));a.hN(e);try{const{isActive:t,manufacturerId:n}=yield(0,r.Z)(e);return n&&a.lY(n),a.G0(t),t}catch(e){return!1}}))},getData:function(e){return s(this,void 0,void 0,(function*(){if(!i.Z.init)return Promise.reject(new Error("R2U - Not initialized"));if(!e)return Promise.reject(new Error("R2U - Missing SKU"));return yield(0,r.Z)(e)}))}}},7374:function(e,t,n){n.d(t,{J1:function(){return u},E9:function(){return d},XH:function(){return p},ar:function(){return f},KN:function(){return m},fQ:function(){return w},hN:function(){return v},lY:function(){return y},G0:function(){return b},fm:function(){return x}});var i=n(2085),r=n(5877),a=n(2367),s=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function s(e){try{c(i.next(e))}catch(e){a(e)}}function o(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}c((i=i.apply(e,t||[])).next())}))};const o="ar_link",c="ar_model_viewer",l="cta",u={componentDidMount:()=>a.Z.analytics.send({event:i.U3.impression,data:{[i.MB.placement]:o},scope:"page"}),onClick:()=>a.Z.analytics.send({event:i.U3.click,data:{[i.MB.placement]:o}}),onFallback:()=>a.Z.analytics.send({event:i.U3.fallback,data:{[i.MB.placement]:o}}),onLike:()=>a.Z.analytics.send({event:i.U3.like,data:{[i.MB.placement]:o}}),onDislike:()=>a.Z.analytics.send({event:i.U3.dislike,data:{[i.MB.placement]:o}}),onSessionTimeCollect:e=>a.Z.analytics.send({event:i.U3.interaction_duration,eventCount:e,data:{[i.MB.placement]:o}})},d={componentDidMount:()=>a.Z.analytics.send({event:i.U3.impression,data:{[i.MB.placement]:c},scope:"page"}),onClick:()=>a.Z.analytics.send({event:i.U3.click,data:{[i.MB.placement]:c}}),onSessionTimeCollect:e=>a.Z.analytics.send({event:i.U3.interaction_duration,eventCount:e,data:{[i.MB.placement]:c}})},p={onSessionStart:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.session_start}),onSessionEnd:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.session_end}),setSession:()=>{a.Z.analytics.webxrSet(i.D1.session_id,(0,r.v4)())},setCompatible:e=>{a.Z.analytics.webxrSet(i.D1.compatible,`${e}`)},onSceneViewerFallback:()=>Promise.all([a.Z.analytics.webxrSend({webxrEvent:i.Ui.scene_viewer_fallback}),a.Z.analytics.send({event:i.U3.fallback,data:{[i.MB.placement]:o},context:"webxr"})]),onFallback:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.fallback}),setPlaneMapped:()=>{a.Z.analytics.webxrSet(i.D1.plane_mapped,(new Date).toISOString())},setObjectPlaced:()=>{a.Z.analytics.webxrSet(i.D1.object_placed,(new Date).toISOString())},setTranslateInstructions:()=>{a.Z.analytics.webxrSet(i.D1.translate_instructions,(new Date).toISOString())},setRotateInstructions:()=>{a.Z.analytics.webxrSet(i.D1.rotate_instructions,(new Date).toISOString())},setFirstTranslation:()=>{a.Z.analytics.webxrSet(i.D1.first_translation,(new Date).toISOString())},setFirstRotation:()=>{a.Z.analytics.webxrSet(i.D1.first_rotation,(new Date).toISOString())},setReset:()=>{a.Z.analytics.webxrSet(i.D1.reset,(new Date).toISOString())},onShare:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.share}),onExit:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.exit}),onLike:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.like}),onDislike:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.dislike}),onCallToAction:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.call_to_action}),onTranslation:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.translation}),onRotation:()=>a.Z.analytics.webxrSend({webxrEvent:i.Ui.rotation})},f={onClick:()=>a.Z.analytics.send({event:i.U3.click,data:{[i.MB.placement]:l},context:"cart"})},v=e=>{a.Z.analytics.set(i.MB.sku,e)},y=e=>{a.Z.analytics.set(i.MB.manufacturer_id,e)},b=e=>{a.Z.analytics.set(i.MB.is_active_3d,`${e}`),a.Z.analytics.send({event:i.U3.product_page_view})},m=e=>{a.Z.analytics.set(i.MB.experiment_id,e)},w=e=>{a.Z.analytics.set(i.MB.variation_id,e)},x=()=>s(void 0,void 0,void 0,(function*(){const e=yield(0,i.cE)();return a.Z.analytics.set(i.MB.fingerprint,e),e}));t.ZP=({client:e,dataLayerIntegration:t,sessionDurationMinutes:n,info:r={}})=>s(void 0,void 0,void 0,(function*(){const a={version:"6.22.2",gcpAnalyticsUrl:"https://us-central1-r2u-analytics.cloudfunctions.net/reportEvent",webxrGcpAnalyticsUrl:"https://us-central1-r2u-analytics.cloudfunctions.net/reportWebXREvent",debug:!!new URLSearchParams(window.location.search).get("realidade-aumentada-debug"),sessionDurationMinutes:n,dataLayerIntegration:t},s=new i.ZP(a,Object.assign(Object.assign({},r),{[i.MB.client]:e}));return yield s.init(),s}))},7523:function(e,t,n){n.d(t,{Z:function(){return o}});var i=n(2297),r=n(2367),a=n(7673),s=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function s(e){try{c(i.next(e))}catch(e){a(e)}}function o(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}c((i=i.apply(e,t||[])).next())}))};function o(e){return s(this,void 0,void 0,(function*(){if(r.Z.products[e])return Promise.resolve(r.Z.products[e]);const t=a.encode({"product.sku":e,"asset.types":["GLB","USDZ"].join(","),"product_review.status":"RUNNING"}),[n]=yield(0,i.U2)(`/customers/${r.Z.customer._id}/products/assets?${t}`);if(!n)throw new Error("R2U - SKU not found");const s=n.assets||[],o=n.product_reviews||[],c=s.find((e=>"GLB"===e.type)),l=s.find((e=>"USDZ"===e.type)),u={glb:c?c.url:"",usdz:l?l.url:"",isActive:o.length>0,name:n.name,placement:n.placement||"floor",resize:n.resize||!1,sound:n.soundUrl,modelId:n.modelId,manufacturerId:n.manufacturerId,pdpUrl:n.pdpUrl,hdri:n.hdri,exposure:n.exposure,bloom:n.bloom,viewerOptions:n.viewerOptions||{}};return r.Z.products[e]=u,u}))}},2297:function(e,t,n){n.d(t,{U2:function(){return s},v_:function(){return o},Bv:function(){return c}});var i=n(2367),r=function(e,t,n,i){return new(n||(n=Promise))((function(r,a){function s(e){try{c(i.next(e))}catch(e){a(e)}}function o(e){try{c(i.throw(e))}catch(e){a(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,o)}c((i=i.apply(e,t||[])).next())}))};const a="https://api.r2u.io";function s(e){return r(this,void 0,void 0,(function*(){const t={};i.Z.refreshCache&&(t["Cache-Control"]="max-age=0");return(yield fetch(`${a}${e}`,{method:"get",headers:t})).json()}))}function o(e,t){return r(this,void 0,void 0,(function*(){return(yield fetch(`${a}${e}`,{method:"POST",body:JSON.stringify(t)})).json()}))}const c=()=>"https://sdk.r2u.io"},2367:function(e,t){const n={init:!1,customer:{_id:"",slug:"",language:"en",hdri:null,exposure:null,bloom:null,experiments:{overrides:{}},viewerOptions:{}},analytics:{set:(e,t)=>{},send:({event:e,data:t,scope:n})=>Promise.resolve()},products:{},hasAutoOpenedAR:!1,growthbook:{},refreshCache:!1};t.Z=n},4147:function(e){e.exports=JSON.parse('{"name":"@r2u/javascript-ar-sdk","version":"6.22.2","main":"dist/index.js","unpkg":"dist/index.js","types":"dist/index.d.ts","repository":"https://github.com/r2u-io/javascript-ar-sdk","files":["dist"],"scripts":{"dev":"yarn build:dev && webpack serve --mode=development","build:dev":"REACT_APP_VERSION=$(jq -r \\".version\\" package.json) webpack --mode=development && yarn build:types","build":"REACT_APP_VERSION=$(jq -r \\".version\\" package.json) webpack --mode=production && yarn build:types","build:types":"tsc && npx tsc-alias","clean":"rm -rf dist/ public/dist/","test":"jest --config ./jest.config.js","stage":"yarn build:dev && gsutil -m cp -R ./public gs://r2u-integrations-bucket/_staging/sdk/","prettier":"prettier --write src","lint":"eslint \\"./src/**/*.{js,ts,tsx}\\"","eject":"rescripts eject"},"peerDependencies":{"react":"^16.13.1","react-dom":"^16.13.1"},"dependencies":{"@r2u/analytics":"^4.3.3","@r2u/react-ar-components":"^5.4.16","@r2u/viewer":"^1.12.3","@types/react-slick":"^0.23.10","i18next":"^20.2.1","i18next-chained-backend":"^2.1.0","i18next-http-backend":"^1.2.1","i18next-localstorage-backend":"^3.1.2","qrcode.react":"^1.0.1","querystring":"^0.2.0","react":"^17.0.2","react-dom":"^17.0.2","react-i18next":"^11.8.13","react-shadow":"^19.0.2","react-slick":"^0.29.0","styled-components":"^5.2.3"},"devDependencies":{"@fingerprintjs/fingerprintjs":"^3.3.0","@growthbook/growthbook":"^0.12.0","@types/jest":"^26.0.15","@types/node":"^13.11.1","@types/qrcode.react":"^1.0.1","@types/react":"^16.9.33","@types/react-dom":"^16.9.6","@types/styled-components":"^5.1.9","@typescript-eslint/eslint-plugin":"^2.3.1","@typescript-eslint/parser":"^2.3.1","eslint":"^7.22.0","eslint-config-prettier":"^6.12.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.17.2","eslint-plugin-jest":"^22.17.0","eslint-plugin-node":"^8.0.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-promise":"^4.1.1","eslint-plugin-react":"^7.14.3","eslint-plugin-standard":"^4.0.0","file-loader":"^6.2.0","jest":"^24.9.0","prettier":"^2.1.2","process":"^0.11.10","three":"^0.131.2","ts-jest":"^26.4.4","ts-loader":"^8.0.17","tsc-alias":"^1.8.11","tsconfig-paths-webpack-plugin":"^3.5.1","typescript":"^3.8.3","util":"^0.12.3","webpack":"^5.24.3","webpack-bundle-analyzer":"^4.4.0","webpack-cli":"^4.5.0","webpack-dev-server":"3.10.3"},"browserslist":{"production":[">0.2%","not dead","not op_mini all"],"development":["last 1 chrome version","last 1 firefox version","last 1 safari version"]}}')}}]);
@@ -1,5 +1,5 @@
1
1
  import Analytics from '@r2u/analytics';
2
- import { Product } from '@services/product';
2
+ import { Product } from './services/product';
3
3
  import { GrowthBook, ExperimentOverride } from '@growthbook/growthbook';
4
4
  import { ViewerOptions } from './methods/types';
5
5
  export interface Customer {