surveysparrow-ionic-plugin 1.0.7-beta.4 → 2.0.0
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.
- package/dist/angular-ui/esm2022/angular-ui.mjs +5 -0
- package/dist/angular-ui/esm2022/public-api.mjs +3 -0
- package/dist/angular-ui/esm2022/spotcheck.component.mjs +17 -0
- package/dist/angular-ui/esm2022/spotchecks/SpotCheck.mjs +51 -0
- package/dist/angular-ui/esm2022/spotchecks/SpotCheckComponent.mjs +323 -0
- package/dist/angular-ui/esm2022/spotchecks/SpotcheckStateService.mjs +65 -0
- package/dist/angular-ui/esm2022/spotchecks/api.mjs +230 -0
- package/dist/angular-ui/esm2022/spotchecks/helpers.mjs +328 -0
- package/dist/angular-ui/esm2022/spotchecks/index.mjs +2 -0
- package/dist/angular-ui/esm2022/spotchecks/storage.mjs +7 -0
- package/dist/angular-ui/esm2022/spotchecks/types.mjs +2 -0
- package/dist/angular-ui/fesm2022/angular-ui.mjs +1013 -0
- package/dist/angular-ui/fesm2022/angular-ui.mjs.map +1 -0
- package/dist/angular-ui/index.d.ts +5 -0
- package/dist/angular-ui/public-api.d.ts +2 -0
- package/dist/angular-ui/spotcheck.component.d.ts +5 -0
- package/dist/angular-ui/spotchecks/SpotCheckComponent.d.ts +56 -0
- package/dist/angular-ui/spotchecks/SpotcheckStateService.d.ts +12 -0
- package/dist/{esm → angular-ui}/spotchecks/helpers.d.ts +1 -4
- package/dist/angular-ui/spotchecks/index.d.ts +2 -0
- package/dist/angular-ui/spotchecks/storage.d.ts +2 -0
- package/dist/{esm → angular-ui}/spotchecks/types.d.ts +5 -4
- package/dist/esm/angular-ui/lib/public-api.d.ts +2 -0
- package/dist/esm/angular-ui/lib/public-api.js +3 -0
- package/dist/esm/angular-ui/lib/public-api.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotcheck.component.d.ts +2 -0
- package/dist/esm/angular-ui/lib/spotcheck.component.js +20 -0
- package/dist/esm/angular-ui/lib/spotcheck.component.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/SpotCheck.d.ts +4 -0
- package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/SpotCheck.js +1 -3
- package/dist/esm/angular-ui/lib/spotchecks/SpotCheck.js.map +1 -0
- package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/SpotCheckComponent.d.ts +1 -0
- package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/SpotCheckComponent.js +13 -7
- package/dist/esm/angular-ui/lib/spotchecks/SpotCheckComponent.js.map +1 -0
- package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/SpotcheckStateService.js +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/SpotcheckStateService.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/api.d.ts +15 -0
- package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/api.js +20 -29
- package/dist/esm/angular-ui/lib/spotchecks/api.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/helpers.d.ts +29 -0
- package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/helpers.js +6 -19
- package/dist/esm/angular-ui/lib/spotchecks/helpers.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/index.d.ts +2 -0
- package/dist/esm/angular-ui/lib/spotchecks/index.js +2 -0
- package/dist/esm/angular-ui/lib/spotchecks/index.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/storage.js.map +1 -0
- package/dist/esm/angular-ui/lib/spotchecks/types.d.ts +78 -0
- package/dist/esm/angular-ui/lib/spotchecks/types.js.map +1 -0
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/plugin.cjs.js +51510 -527
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +51511 -524
- package/dist/plugin.js.map +1 -1
- package/package.json +31 -4
- package/src/angular-ui/lib/public-api.ts +2 -0
- package/src/angular-ui/lib/spotcheck.component.ts +10 -0
- package/src/angular-ui/lib/spotchecks/SpotCheck.ts +54 -0
- package/src/angular-ui/lib/spotchecks/SpotCheckComponent.css +7 -0
- package/src/angular-ui/lib/spotchecks/SpotCheckComponent.html +27 -0
- package/src/angular-ui/lib/spotchecks/SpotCheckComponent.ts +295 -0
- package/src/angular-ui/lib/spotchecks/SpotcheckStateService.ts +64 -0
- package/src/angular-ui/lib/spotchecks/api.ts +286 -0
- package/src/angular-ui/lib/spotchecks/helpers.ts +401 -0
- package/src/angular-ui/lib/spotchecks/index.ts +9 -0
- package/src/angular-ui/lib/spotchecks/storage.ts +7 -0
- package/src/angular-ui/lib/spotchecks/types.ts +84 -0
- package/src/angular-ui/ng-package.json +13 -0
- package/src/angular-ui/package.json +10 -0
- package/src/definitions.ts +17 -0
- package/src/index.ts +10 -0
- package/dist/esm/spotchecks/SpotCheck.js.map +0 -1
- package/dist/esm/spotchecks/SpotCheckComponent.js.map +0 -1
- package/dist/esm/spotchecks/SpotCheckService.d.ts +0 -8
- package/dist/esm/spotchecks/SpotCheckService.js +0 -45
- package/dist/esm/spotchecks/SpotCheckService.js.map +0 -1
- package/dist/esm/spotchecks/SpotcheckStateService.js.map +0 -1
- package/dist/esm/spotchecks/SpotchecksListener.d.ts +0 -9
- package/dist/esm/spotchecks/SpotchecksListener.js +0 -37
- package/dist/esm/spotchecks/SpotchecksListener.js.map +0 -1
- package/dist/esm/spotchecks/api.js.map +0 -1
- package/dist/esm/spotchecks/helpers.js.map +0 -1
- package/dist/esm/spotchecks/index.d.ts +0 -5
- package/dist/esm/spotchecks/index.js +0 -6
- package/dist/esm/spotchecks/index.js.map +0 -1
- package/dist/esm/spotchecks/storage.js.map +0 -1
- package/dist/esm/spotchecks/types.js.map +0 -1
- /package/dist/{esm → angular-ui}/spotchecks/SpotCheck.d.ts +0 -0
- /package/dist/{esm → angular-ui}/spotchecks/api.d.ts +0 -0
- /package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/SpotcheckStateService.d.ts +0 -0
- /package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/storage.d.ts +0 -0
- /package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/storage.js +0 -0
- /package/dist/esm/{spotchecks → angular-ui/lib/spotchecks}/types.js +0 -0
|
@@ -0,0 +1,328 @@
|
|
|
1
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
2
|
+
import { Device } from '@capacitor/device';
|
|
3
|
+
import axios from 'axios';
|
|
4
|
+
import { SpotcheckStateService } from './SpotcheckStateService';
|
|
5
|
+
let globalSpotcheckStateService;
|
|
6
|
+
export const getSpotcheckStateService = () => {
|
|
7
|
+
if (!globalSpotcheckStateService) {
|
|
8
|
+
globalSpotcheckStateService = new SpotcheckStateService();
|
|
9
|
+
}
|
|
10
|
+
return globalSpotcheckStateService;
|
|
11
|
+
};
|
|
12
|
+
export function generateTraceId() {
|
|
13
|
+
const uuidString = uuidv4();
|
|
14
|
+
const timestamp = Date.now();
|
|
15
|
+
return `${uuidString}-${timestamp}`;
|
|
16
|
+
}
|
|
17
|
+
export const ischatSurvey = (type) => {
|
|
18
|
+
return (type === 'Conversational' ||
|
|
19
|
+
type === 'CESChat' ||
|
|
20
|
+
type === 'NPSChat' ||
|
|
21
|
+
type === 'CSATChat');
|
|
22
|
+
};
|
|
23
|
+
export const getOS = async () => {
|
|
24
|
+
const info = await Device.getInfo();
|
|
25
|
+
return info.operatingSystem;
|
|
26
|
+
};
|
|
27
|
+
export const setAppearance = async (responseJson, screen, domainName, traceId, variables) => {
|
|
28
|
+
try {
|
|
29
|
+
const spotcheckStateService = getSpotcheckStateService();
|
|
30
|
+
let state = spotcheckStateService.getState();
|
|
31
|
+
if (responseJson) {
|
|
32
|
+
const currentSpotcheck = state.filteredSpotChecks.find((spotcheck) => spotcheck['id'] === responseJson?.spotCheckId ||
|
|
33
|
+
spotcheck['id'] === responseJson?.id);
|
|
34
|
+
const appearance = responseJson?.appearance;
|
|
35
|
+
let chat = false;
|
|
36
|
+
let updatedState = {};
|
|
37
|
+
if (appearance) {
|
|
38
|
+
const { position, closeButton, colors, cardProperties, mode, bannerImage, } = appearance;
|
|
39
|
+
const { maxHeight } = cardProperties || {};
|
|
40
|
+
updatedState = {
|
|
41
|
+
spotcheckPosition: position === 'top_full' || position === 'center_top'
|
|
42
|
+
? 'top'
|
|
43
|
+
: position === 'center_center'
|
|
44
|
+
? 'center'
|
|
45
|
+
: 'bottom',
|
|
46
|
+
isCloseButtonEnabled: closeButton ?? true,
|
|
47
|
+
closeButtonStyle: colors?.overrides ?? {},
|
|
48
|
+
maxHeight: maxHeight ? parseFloat(maxHeight) / 100 : 0,
|
|
49
|
+
spotCheckType: ischatSurvey(currentSpotcheck?.['survey']?.surveyType) &&
|
|
50
|
+
mode === 'fullScreen'
|
|
51
|
+
? 'chat'
|
|
52
|
+
: 'classic',
|
|
53
|
+
isFullScreenMode: mode === 'fullScreen',
|
|
54
|
+
isBannerImageOn: bannerImage?.enabled ?? false,
|
|
55
|
+
spotChecksMode: mode,
|
|
56
|
+
avatarEnabled: appearance?.avatar?.enabled ?? false,
|
|
57
|
+
avatarUrl: appearance?.avatar?.avatarUrl ?? '',
|
|
58
|
+
};
|
|
59
|
+
chat = updatedState.spotCheckType === 'chat';
|
|
60
|
+
}
|
|
61
|
+
const spotCheckId = responseJson?.spotCheckId ?? 0;
|
|
62
|
+
const spotCheckContactId = responseJson?.spotCheckContactId ??
|
|
63
|
+
responseJson?.spotCheckContact?.id ??
|
|
64
|
+
0;
|
|
65
|
+
const triggerToken = responseJson?.triggerToken ?? '';
|
|
66
|
+
updatedState = {
|
|
67
|
+
...updatedState,
|
|
68
|
+
spotcheckID: spotCheckId,
|
|
69
|
+
spotcheckContactID: spotCheckContactId,
|
|
70
|
+
triggerToken,
|
|
71
|
+
};
|
|
72
|
+
const baseSpotcheckURL = `https://${domainName}/s/spotcheck/${triggerToken}/${chat ? 'config' : 'bootstrap'}?spotcheckContactId=${spotCheckContactId}&traceId=${traceId}&spotcheckUrl=${screen}`;
|
|
73
|
+
let fullSpotcheckURL = baseSpotcheckURL;
|
|
74
|
+
Object.entries(variables).forEach(([key, value]) => {
|
|
75
|
+
fullSpotcheckURL += `&${key}=${value}`;
|
|
76
|
+
});
|
|
77
|
+
updatedState.spotcheckURL = fullSpotcheckURL;
|
|
78
|
+
spotcheckStateService.setState(updatedState);
|
|
79
|
+
try {
|
|
80
|
+
const response = await axios.get(fullSpotcheckURL);
|
|
81
|
+
const themeInfo = response.data.config.generatedCSS;
|
|
82
|
+
const theme_payload = { type: 'THEME_UPDATE_SPOTCHECK', themeInfo };
|
|
83
|
+
state = spotcheckStateService.getState();
|
|
84
|
+
let webViewRef = chat ? state.chatWebViewRef : state.classicWebViewRef;
|
|
85
|
+
let isLoading = chat ? state.isChatLoading : state.isClassicLoading;
|
|
86
|
+
const resetStateData = {
|
|
87
|
+
type: 'RESET_STATE',
|
|
88
|
+
state: {
|
|
89
|
+
...(response.data || {}),
|
|
90
|
+
skip: true,
|
|
91
|
+
spotCheckAppearance: {
|
|
92
|
+
...(appearance || {}),
|
|
93
|
+
targetType: 'MOBILE',
|
|
94
|
+
},
|
|
95
|
+
spotcheckUrl: screen,
|
|
96
|
+
traceId,
|
|
97
|
+
elementBuilderParams: {
|
|
98
|
+
...(variables || {}),
|
|
99
|
+
},
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
const sendMessageToIframe = (iframe, data) => {
|
|
103
|
+
if (iframe && iframe.contentWindow) {
|
|
104
|
+
try {
|
|
105
|
+
iframe.contentWindow.postMessage(data, '*');
|
|
106
|
+
}
|
|
107
|
+
catch (error) {
|
|
108
|
+
console.error('❌ Failed to send message to iframe:', error);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
const communicateWithWebView = async (iframe) => {
|
|
113
|
+
await new Promise(resolve => setTimeout(() => {
|
|
114
|
+
sendMessageToIframe(iframe, resetStateData);
|
|
115
|
+
sendMessageToIframe(iframe, theme_payload);
|
|
116
|
+
resolve(true);
|
|
117
|
+
}, 2000));
|
|
118
|
+
};
|
|
119
|
+
if (webViewRef) {
|
|
120
|
+
if (isLoading === false) {
|
|
121
|
+
communicateWithWebView(webViewRef);
|
|
122
|
+
start();
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
// todo: recheck this
|
|
127
|
+
const unsubscribe = spotcheckStateService.state$.subscribe((currentState) => {
|
|
128
|
+
const { isChatLoading, isClassicLoading, chatWebViewRef, classicWebViewRef, } = currentState;
|
|
129
|
+
if ((!isChatLoading && chat) || (!isClassicLoading && !chat)) {
|
|
130
|
+
unsubscribe.unsubscribe();
|
|
131
|
+
const activeWebViewRef = chat
|
|
132
|
+
? chatWebViewRef
|
|
133
|
+
: classicWebViewRef;
|
|
134
|
+
if (activeWebViewRef) {
|
|
135
|
+
communicateWithWebView(activeWebViewRef);
|
|
136
|
+
start();
|
|
137
|
+
}
|
|
138
|
+
else {
|
|
139
|
+
console.warn('⚠️ Active WebView ref is null after loading completed');
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
else {
|
|
147
|
+
const unsubscribeWebView = spotcheckStateService.state$.subscribe((currentState) => {
|
|
148
|
+
const updatedWebViewRef = chat
|
|
149
|
+
? currentState.chatWebViewRef
|
|
150
|
+
: currentState.classicWebViewRef;
|
|
151
|
+
const updatedIsLoading = chat
|
|
152
|
+
? currentState.isChatLoading
|
|
153
|
+
: currentState.isClassicLoading;
|
|
154
|
+
if (updatedWebViewRef) {
|
|
155
|
+
if (!updatedIsLoading) {
|
|
156
|
+
unsubscribeWebView.unsubscribe();
|
|
157
|
+
communicateWithWebView(updatedWebViewRef);
|
|
158
|
+
start();
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
console.log('⏳ WebView ref available but still loading...');
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
return true;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
catch (error) {
|
|
169
|
+
throw new Error(error.message);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
throw new Error('Something went wrong');
|
|
173
|
+
}
|
|
174
|
+
catch (error) {
|
|
175
|
+
throw new Error(error.message);
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
export const start = () => {
|
|
179
|
+
const state = getSpotcheckStateService().getState();
|
|
180
|
+
setTimeout(() => {
|
|
181
|
+
getSpotcheckStateService().setState({ isVisible: true });
|
|
182
|
+
}, state.afterDelay * 1000);
|
|
183
|
+
};
|
|
184
|
+
export const closeSpotCheck = async () => {
|
|
185
|
+
try {
|
|
186
|
+
const stateService = getSpotcheckStateService();
|
|
187
|
+
const state = stateService.getState();
|
|
188
|
+
const payload = {
|
|
189
|
+
traceId: state.traceId,
|
|
190
|
+
triggerToken: state.triggerToken,
|
|
191
|
+
};
|
|
192
|
+
const response = await fetch(`https://${state.domainName}/api/internal/spotcheck/dismiss/${state.spotcheckContactID}`, {
|
|
193
|
+
method: 'PUT',
|
|
194
|
+
headers: {
|
|
195
|
+
'Content-Type': 'application/json',
|
|
196
|
+
},
|
|
197
|
+
body: JSON.stringify(payload),
|
|
198
|
+
});
|
|
199
|
+
if (response.status != 200) {
|
|
200
|
+
console.log(`Error: ${response.status}`);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
catch (error) {
|
|
204
|
+
console.log('Error parsing JSON:', error);
|
|
205
|
+
}
|
|
206
|
+
};
|
|
207
|
+
export const handleSurveyEnd = () => {
|
|
208
|
+
const stateService = getSpotcheckStateService();
|
|
209
|
+
const state = stateService.getState();
|
|
210
|
+
const webViewRef = state.spotCheckType === 'chat'
|
|
211
|
+
? state.chatWebViewRef
|
|
212
|
+
: state.classicWebViewRef;
|
|
213
|
+
webViewRef?.current?.injectJavaScript(`
|
|
214
|
+
(function() {
|
|
215
|
+
window.dispatchEvent(new MessageEvent('message', {
|
|
216
|
+
data: ${JSON.stringify({ type: 'UNMOUNT_APP' })}
|
|
217
|
+
}));
|
|
218
|
+
})();
|
|
219
|
+
`);
|
|
220
|
+
const updatedState = {
|
|
221
|
+
isVisible: false,
|
|
222
|
+
isCloseButtonEnabled: false,
|
|
223
|
+
isFullScreenMode: false,
|
|
224
|
+
spotcheckID: 0,
|
|
225
|
+
currentQuestionHeight: 0,
|
|
226
|
+
closeButtonStyle: {},
|
|
227
|
+
spotcheckContactID: 0,
|
|
228
|
+
spotcheckURL: '',
|
|
229
|
+
spotcheckPosition: 'bottom',
|
|
230
|
+
isMounted: false,
|
|
231
|
+
spotCheckType: '',
|
|
232
|
+
screenHeight: 0,
|
|
233
|
+
keyBoardHeight: 0,
|
|
234
|
+
textPosition: 0,
|
|
235
|
+
spotChecksMode: '',
|
|
236
|
+
avatarEnabled: false,
|
|
237
|
+
avatarUrl: '',
|
|
238
|
+
};
|
|
239
|
+
stateService.setState(updatedState);
|
|
240
|
+
};
|
|
241
|
+
export const getSpotcheckComponentCssStyles = (state) => {
|
|
242
|
+
let styles = {};
|
|
243
|
+
let wrapperStyles = {};
|
|
244
|
+
let extraPaddingForMiniCardCloseButtonIfTopPosition = 0;
|
|
245
|
+
if (state.isFullScreenMode && state.isVisible) {
|
|
246
|
+
wrapperStyles = {
|
|
247
|
+
display: 'flex',
|
|
248
|
+
height: '100%',
|
|
249
|
+
};
|
|
250
|
+
styles = {
|
|
251
|
+
display: 'flex',
|
|
252
|
+
height: '100%',
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
if (state.isVisible && state.isMounted) {
|
|
256
|
+
let height = Math.min(state.currentQuestionHeight, (state.maxHeight * window.innerHeight));
|
|
257
|
+
if (state.spotChecksMode === 'miniCard') {
|
|
258
|
+
if (state.avatarEnabled) {
|
|
259
|
+
height = height - 56;
|
|
260
|
+
}
|
|
261
|
+
if (state.isCloseButtonEnabled) {
|
|
262
|
+
height = height - 40;
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
switch (state.spotcheckPosition) {
|
|
266
|
+
case 'bottom':
|
|
267
|
+
styles = {
|
|
268
|
+
display: 'flex',
|
|
269
|
+
height: height + 'px',
|
|
270
|
+
};
|
|
271
|
+
wrapperStyles = {
|
|
272
|
+
display: 'flex',
|
|
273
|
+
justifyContent: 'flex-end',
|
|
274
|
+
};
|
|
275
|
+
break;
|
|
276
|
+
case 'top':
|
|
277
|
+
styles = {
|
|
278
|
+
display: 'flex',
|
|
279
|
+
height: height + 'px',
|
|
280
|
+
};
|
|
281
|
+
wrapperStyles = {
|
|
282
|
+
display: 'flex',
|
|
283
|
+
justifyContent: 'flex-start',
|
|
284
|
+
};
|
|
285
|
+
if (state.spotChecksMode === 'miniCard' && state.isCloseButtonEnabled) {
|
|
286
|
+
extraPaddingForMiniCardCloseButtonIfTopPosition = 30;
|
|
287
|
+
}
|
|
288
|
+
break;
|
|
289
|
+
case 'center':
|
|
290
|
+
styles = {
|
|
291
|
+
display: 'flex',
|
|
292
|
+
height: height + 'px',
|
|
293
|
+
};
|
|
294
|
+
wrapperStyles = {
|
|
295
|
+
display: 'flex',
|
|
296
|
+
justifyContent: 'center',
|
|
297
|
+
};
|
|
298
|
+
break;
|
|
299
|
+
default:
|
|
300
|
+
break;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
return {
|
|
304
|
+
wrapperStyles: {
|
|
305
|
+
position: 'fixed',
|
|
306
|
+
width: '100%',
|
|
307
|
+
height: '100%',
|
|
308
|
+
top: '0',
|
|
309
|
+
left: '0',
|
|
310
|
+
backgroundColor: 'rgba(0, 0, 0, 0.3)',
|
|
311
|
+
zIndex: '99999999',
|
|
312
|
+
display: 'none',
|
|
313
|
+
flexDirection: 'column',
|
|
314
|
+
...wrapperStyles
|
|
315
|
+
},
|
|
316
|
+
styles: {
|
|
317
|
+
display: 'none',
|
|
318
|
+
flexDirection: 'column',
|
|
319
|
+
paddingTop: extraPaddingForMiniCardCloseButtonIfTopPosition + 'px',
|
|
320
|
+
...styles,
|
|
321
|
+
}
|
|
322
|
+
};
|
|
323
|
+
};
|
|
324
|
+
export const closeSpotCheckAndHandleSurveyEnd = async () => {
|
|
325
|
+
await closeSpotCheck();
|
|
326
|
+
handleSurveyEnd();
|
|
327
|
+
};
|
|
328
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hbmd1bGFyLXVpL2xpYi9zcG90Y2hlY2tzL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxJQUFJLDJCQUFrRCxDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLEdBQTBCLEVBQUU7SUFDbEUsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDakMsMkJBQTJCLEdBQUcsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFDRCxPQUFPLDJCQUEyQixDQUFDO0FBQ3JDLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxlQUFlO0lBQzdCLE1BQU0sVUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQzVCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM3QixPQUFPLEdBQUcsVUFBVSxJQUFJLFNBQVMsRUFBRSxDQUFDO0FBQ3RDLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUMzQyxPQUFPLENBQ0wsSUFBSSxLQUFLLGdCQUFnQjtRQUN6QixJQUFJLEtBQUssU0FBUztRQUNsQixJQUFJLEtBQUssU0FBUztRQUNsQixJQUFJLEtBQUssVUFBVSxDQUNwQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQzlCLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxD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O29CQUNyRSwrQ0FBK0MsR0FBRyxFQUFFLENBQUM7Z0JBQ3ZELENBQUM7Z0JBQ0gsTUFBTTtZQUVOLEtBQUssUUFBUTtnQkFDWCxNQUFNLEdBQUc7b0JBQ1AsT0FBTyxFQUFFLE1BQU07b0JBQ2YsTUFBTSxFQUFFLE1BQU0sR0FBQyxJQUFJO2lCQUNwQixDQUFDO2dCQUNGLGFBQWEsR0FBRztvQkFDZCxPQUFPLEVBQUUsTUFBTTtvQkFDZixjQUFjLEVBQUUsUUFBUTtpQkFDekIsQ0FBQztnQkFDSixNQUFNO1lBRVI7Z0JBQ0UsTUFBTTtRQUNWLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTztRQUNMLGFBQWEsRUFBRTtZQUNiLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLEtBQUssRUFBRSxNQUFNO1lBQ2IsTUFBTSxFQUFFLE1BQU07WUFDZCxHQUFHLEVBQUUsR0FBRztZQUNSLElBQUksRUFBRSxHQUFHO1lBQ1QsZUFBZSxFQUFFLG9CQUFvQjtZQUNyQyxNQUFNLEVBQUUsVUFBVTtZQUNsQixPQUFPLEVBQUUsTUFBTTtZQUNmLGFBQWEsRUFBRSxRQUFRO1lBQ3ZCLEdBQUcsYUFBYTtTQUNqQjtRQUNELE1BQU0sRUFBRTtZQUNOLE9BQU8sRUFBRSxNQUFNO1lBQ2YsYUFBYSxFQUFFLFFBQVE7WUFDdkIsVUFBVSxFQUFFLCtDQUErQyxHQUFDLElBQUk7WUFDaEUsR0FBRyxNQUFNO1NBQ1Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDekQsTUFBTSxjQUFjLEVBQUUsQ0FBQztJQUN2QixlQUFlLEVBQUUsQ0FBQztBQUNwQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IERldmljZSB9IGZyb20gJ0BjYXBhY2l0b3IvZGV2aWNlJztcbmltcG9ydCB7IFNwb3RjaGVja1N0YXRlIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHsgU3BvdGNoZWNrU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9TcG90Y2hlY2tTdGF0ZVNlcnZpY2UnO1xuXG5sZXQgZ2xvYmFsU3BvdGNoZWNrU3RhdGVTZXJ2aWNlOiBTcG90Y2hlY2tTdGF0ZVNlcnZpY2U7XG5cbmV4cG9ydCBjb25zdCBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UgPSAoKTogU3BvdGNoZWNrU3RhdGVTZXJ2aWNlID0+IHtcbiAgaWYgKCFnbG9iYWxTcG90Y2hlY2tTdGF0ZVNlcnZpY2UpIHtcbiAgICBnbG9iYWxTcG90Y2hlY2tTdGF0ZVNlcnZpY2UgPSBuZXcgU3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gIH1cbiAgcmV0dXJuIGdsb2JhbFNwb3RjaGVja1N0YXRlU2VydmljZTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVRyYWNlSWQoKSB7XG4gIGNvbnN0IHV1aWRTdHJpbmcgPSB1dWlkdjQoKTtcbiAgY29uc3QgdGltZXN0YW1wID0gRGF0ZS5ub3coKTtcbiAgcmV0dXJuIGAke3V1aWRTdHJpbmd9LSR7dGltZXN0YW1wfWA7XG59XG5cbmV4cG9ydCBjb25zdCBpc2NoYXRTdXJ2ZXkgPSAodHlwZTogU3RyaW5nKSA9PiB7XG4gIHJldHVybiAoXG4gICAgdHlwZSA9PT0gJ0NvbnZlcnNhdGlvbmFsJyB8fFxuICAgIHR5cGUgPT09ICdDRVNDaGF0JyB8fFxuICAgIHR5cGUgPT09ICdOUFNDaGF0JyB8fFxuICAgIHR5cGUgPT09ICdDU0FUQ2hhdCdcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRPUyA9IGFzeW5jICgpID0+IHtcbiAgY29uc3QgaW5mbyA9IGF3YWl0IERldmljZS5nZXRJbmZvKCk7XG4gIHJldHVybiBpbmZvLm9wZXJhdGluZ1N5c3RlbTtcbn07XG5cbmV4cG9ydCBjb25zdCBzZXRBcHBlYXJhbmNlID0gYXN5bmMgKFxuICByZXNwb25zZUpzb246IGFueSxcbiAgc2NyZWVuOiBzdHJpbmcsXG4gIGRvbWFpbk5hbWU6IHN0cmluZyxcbiAgdHJhY2VJZDogc3RyaW5nLFxuICB2YXJpYWJsZXM6IFJlY29yZDxzdHJpbmcsIGFueT5cbikgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHNwb3RjaGVja1N0YXRlU2VydmljZSA9IGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpO1xuICAgIGxldCBzdGF0ZSA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5nZXRTdGF0ZSgpO1xuXG4gICAgaWYgKHJlc3BvbnNlSnNvbikge1xuICAgICAgY29uc3QgY3VycmVudFNwb3RjaGVjayA9IHN0YXRlLmZpbHRlcmVkU3BvdENoZWNrcy5maW5kKFxuICAgICAgICAoc3BvdGNoZWNrKSA9PlxuICAgICAgICAgIHNwb3RjaGVja1snaWQnXSA9PT0gcmVzcG9uc2VKc29uPy5zcG90Q2hlY2tJZCB8fFxuICAgICAgICAgIHNwb3RjaGVja1snaWQnXSA9PT0gcmVzcG9uc2VKc29uPy5pZFxuICAgICAgKTtcblxuICAgICAgY29uc3QgYXBwZWFyYW5jZSA9IHJlc3BvbnNlSnNvbj8uYXBwZWFyYW5jZTtcbiAgICAgIGxldCBjaGF0ID0gZmFsc2U7XG5cbiAgICAgIGxldCB1cGRhdGVkU3RhdGU6IFBhcnRpYWw8U3BvdGNoZWNrU3RhdGU+ID0ge307XG5cbiAgICAgIGlmIChhcHBlYXJhbmNlKSB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICBjbG9zZUJ1dHRvbixcbiAgICAgICAgICBjb2xvcnMsXG4gICAgICAgICAgY2FyZFByb3BlcnRpZXMsXG4gICAgICAgICAgbW9kZSxcbiAgICAgICAgICBiYW5uZXJJbWFnZSxcbiAgICAgICAgfSA9IGFwcGVhcmFuY2U7XG4gICAgICAgIGNvbnN0IHsgbWF4SGVpZ2h0IH0gPSBjYXJkUHJvcGVydGllcyB8fCB7fTtcblxuICAgICAgICB1cGRhdGVkU3RhdGUgPSB7XG4gICAgICAgICAgc3BvdGNoZWNrUG9zaXRpb246XG4gICAgICAgICAgICBwb3NpdGlvbiA9PT0gJ3RvcF9mdWxsJyB8fCBwb3NpdGlvbiA9PT0gJ2NlbnRlcl90b3AnXG4gICAgICAgICAgICAgID8gJ3RvcCdcbiAgICAgICAgICAgICAgOiBwb3NpdGlvbiA9PT0gJ2NlbnRlcl9jZW50ZXInXG4gICAgICAgICAgICAgID8gJ2NlbnRlcidcbiAgICAgICAgICAgICAgOiAnYm90dG9tJyxcbiAgICAgICAgICBpc0Nsb3NlQnV0dG9uRW5hYmxlZDogY2xvc2VCdXR0b24gPz8gdHJ1ZSxcbiAgICAgICAgICBjbG9zZUJ1dHRvblN0eWxlOiBjb2xvcnM/Lm92ZXJyaWRlcyA/PyB7fSxcbiAgICAgICAgICBtYXhIZWlnaHQ6IG1heEhlaWdodCA/IHBhcnNlRmxvYXQobWF4SGVpZ2h0KSAvIDEwMCA6IDAsXG4gICAgICAgICAgc3BvdENoZWNrVHlwZTpcbiAgICAgICAgICAgIGlzY2hhdFN1cnZleShjdXJyZW50U3BvdGNoZWNrPy5bJ3N1cnZleSddPy5zdXJ2ZXlUeXBlKSAmJlxuICAgICAgICAgICAgbW9kZSA9PT0gJ2Z1bGxTY3JlZW4nXG4gICAgICAgICAgICAgID8gJ2NoYXQnXG4gICAgICAgICAgICAgIDogJ2NsYXNzaWMnLFxuICAgICAgICAgIGlzRnVsbFNjcmVlbk1vZGU6IG1vZGUgPT09ICdmdWxsU2NyZWVuJyxcbiAgICAgICAgICBpc0Jhbm5lckltYWdlT246IGJhbm5lckltYWdlPy5lbmFibGVkID8/IGZhbHNlLFxuICAgICAgICAgIHNwb3RDaGVja3NNb2RlOiBtb2RlLFxuICAgICAgICAgIGF2YXRhckVuYWJsZWQ6IGFwcGVhcmFuY2U/LmF2YXRhcj8uZW5hYmxlZCA/PyBmYWxzZSxcbiAgICAgICAgICBhdmF0YXJVcmw6IGFwcGVhcmFuY2U/LmF2YXRhcj8uYXZhdGFyVXJsID8/ICcnLFxuICAgICAgICB9O1xuXG4gICAgICAgIGNoYXQgPSB1cGRhdGVkU3RhdGUuc3BvdENoZWNrVHlwZSA9PT0gJ2NoYXQnO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcG90Q2hlY2tJZCA9IHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrSWQgPz8gMDtcbiAgICAgIGNvbnN0IHNwb3RDaGVja0NvbnRhY3RJZCA9XG4gICAgICAgIHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrQ29udGFjdElkID8/XG4gICAgICAgIHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrQ29udGFjdD8uaWQgPz9cbiAgICAgICAgMDtcbiAgICAgIGNvbnN0IHRyaWdnZXJUb2tlbiA9IHJlc3BvbnNlSnNvbj8udHJpZ2dlclRva2VuID8/ICcnO1xuXG4gICAgICB1cGRhdGVkU3RhdGUgPSB7XG4gICAgICAgIC4uLnVwZGF0ZWRTdGF0ZSxcbiAgICAgICAgc3BvdGNoZWNrSUQ6IHNwb3RDaGVja0lkLFxuICAgICAgICBzcG90Y2hlY2tDb250YWN0SUQ6IHNwb3RDaGVja0NvbnRhY3RJZCxcbiAgICAgICAgdHJpZ2dlclRva2VuLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgYmFzZVNwb3RjaGVja1VSTCA9IGBodHRwczovLyR7ZG9tYWluTmFtZX0vcy9zcG90Y2hlY2svJHt0cmlnZ2VyVG9rZW59LyR7XG4gICAgICAgIGNoYXQgPyAnY29uZmlnJyA6ICdib290c3RyYXAnXG4gICAgICB9P3Nwb3RjaGVja0NvbnRhY3RJZD0ke3Nwb3RDaGVja0NvbnRhY3RJZH0mdHJhY2VJZD0ke3RyYWNlSWR9JnNwb3RjaGVja1VybD0ke3NjcmVlbn1gO1xuXG4gICAgICBsZXQgZnVsbFNwb3RjaGVja1VSTCA9IGJhc2VTcG90Y2hlY2tVUkw7XG5cbiAgICAgIE9iamVjdC5lbnRyaWVzKHZhcmlhYmxlcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGZ1bGxTcG90Y2hlY2tVUkwgKz0gYCYke2tleX09JHt2YWx1ZX1gO1xuICAgICAgfSk7XG5cbiAgICAgIHVwZGF0ZWRTdGF0ZS5zcG90Y2hlY2tVUkwgPSBmdWxsU3BvdGNoZWNrVVJMO1xuICAgICAgc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLnNldFN0YXRlKHVwZGF0ZWRTdGF0ZSk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MuZ2V0KGZ1bGxTcG90Y2hlY2tVUkwpO1xuICAgICAgICBjb25zdCB0aGVtZUluZm8gPSByZXNwb25zZS5kYXRhLmNvbmZpZy5nZW5lcmF0ZWRDU1M7XG4gICAgICAgIGNvbnN0IHRoZW1lX3BheWxvYWQgPSB7IHR5cGU6ICdUSEVNRV9VUERBVEVfU1BPVENIRUNLJywgdGhlbWVJbmZvIH07XG4gICAgICAgIHN0YXRlID0gc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLmdldFN0YXRlKCk7XG5cbiAgICAgICAgbGV0IHdlYlZpZXdSZWYgPSBjaGF0ID8gc3RhdGUuY2hhdFdlYlZpZXdSZWYgOiBzdGF0ZS5jbGFzc2ljV2ViVmlld1JlZjtcbiAgICAgICAgbGV0IGlzTG9hZGluZyA9IGNoYXQgPyBzdGF0ZS5pc0NoYXRMb2FkaW5nIDogc3RhdGUuaXNDbGFzc2ljTG9hZGluZztcblxuICAgICAgICBjb25zdCByZXNldFN0YXRlRGF0YSA9IHtcbiAgICAgICAgICB0eXBlOiAnUkVTRVRfU1RBVEUnLFxuICAgICAgICAgIHN0YXRlOiB7XG4gICAgICAgICAgICAuLi4ocmVzcG9uc2UuZGF0YSB8fCB7fSksXG4gICAgICAgICAgICBza2lwOiB0cnVlLFxuICAgICAgICAgICAgc3BvdENoZWNrQXBwZWFyYW5jZToge1xuICAgICAgICAgICAgICAuLi4oYXBwZWFyYW5jZSB8fCB7fSksXG4gICAgICAgICAgICAgIHRhcmdldFR5cGU6ICdNT0JJTEUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNwb3RjaGVja1VybDogc2NyZWVuLFxuICAgICAgICAgICAgdHJhY2VJZCxcbiAgICAgICAgICAgIGVsZW1lbnRCdWlsZGVyUGFyYW1zOiB7XG4gICAgICAgICAgICAgIC4uLih2YXJpYWJsZXMgfHwge30pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHNlbmRNZXNzYWdlVG9JZnJhbWUgPSAoaWZyYW1lOiBIVE1MSUZyYW1lRWxlbWVudCwgZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKGlmcmFtZSAmJiBpZnJhbWUuY29udGVudFdpbmRvdykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UoZGF0YSwgJyonKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ+KdjCBGYWlsZWQgdG8gc2VuZCBtZXNzYWdlIHRvIGlmcmFtZTonLCBlcnJvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGNvbW11bmljYXRlV2l0aFdlYlZpZXcgPSBhc3luYyAoaWZyYW1lOiBIVE1MSUZyYW1lRWxlbWVudCkgPT4ge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBzZW5kTWVzc2FnZVRvSWZyYW1lKGlmcmFtZSwgcmVzZXRTdGF0ZURhdGEpO1xuICAgICAgICAgICAgc2VuZE1lc3NhZ2VUb0lmcmFtZShpZnJhbWUsIHRoZW1lX3BheWxvYWQpO1xuICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICAgICAgICB9LCAyMDAwKSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKHdlYlZpZXdSZWYpIHtcbiAgICAgICAgICBpZiAoaXNMb2FkaW5nID09PSBmYWxzZSkge1xuICAgICAgICAgICAgY29tbXVuaWNhdGVXaXRoV2ViVmlldyh3ZWJWaWV3UmVmKTtcbiAgICAgICAgICAgIHN0YXJ0KCk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gdG9kbzogcmVjaGVjayB0aGlzXG4gICAgICAgICAgICBjb25zdCB1bnN1YnNjcmliZSA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5zdGF0ZSQuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAoY3VycmVudFN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgICAgICAgaXNDaGF0TG9hZGluZyxcbiAgICAgICAgICAgICAgICAgIGlzQ2xhc3NpY0xvYWRpbmcsXG4gICAgICAgICAgICAgICAgICBjaGF0V2ViVmlld1JlZixcbiAgICAgICAgICAgICAgICAgIGNsYXNzaWNXZWJWaWV3UmVmLFxuICAgICAgICAgICAgICAgIH0gPSBjdXJyZW50U3RhdGU7XG5cbiAgICAgICAgICAgICAgICBpZiAoKCFpc0NoYXRMb2FkaW5nICYmIGNoYXQpIHx8ICghaXNDbGFzc2ljTG9hZGluZyAmJiAhY2hhdCkpIHtcbiAgICAgICAgICAgICAgICAgIHVuc3Vic2NyaWJlLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICBjb25zdCBhY3RpdmVXZWJWaWV3UmVmID0gY2hhdFxuICAgICAgICAgICAgICAgICAgICA/IGNoYXRXZWJWaWV3UmVmXG4gICAgICAgICAgICAgICAgICAgIDogY2xhc3NpY1dlYlZpZXdSZWY7XG4gICAgICAgICAgICAgICAgICBpZiAoYWN0aXZlV2ViVmlld1JlZikge1xuICAgICAgICAgICAgICAgICAgICBjb21tdW5pY2F0ZVdpdGhXZWJWaWV3KGFjdGl2ZVdlYlZpZXdSZWYpO1xuICAgICAgICAgICAgICAgICAgICBzdGFydCgpO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgICAgICAgICfimqDvuI8gQWN0aXZlIFdlYlZpZXcgcmVmIGlzIG51bGwgYWZ0ZXIgbG9hZGluZyBjb21wbGV0ZWQnXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHVuc3Vic2NyaWJlV2ViVmlldyA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5zdGF0ZSQuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKGN1cnJlbnRTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkV2ViVmlld1JlZiA9IGNoYXRcbiAgICAgICAgICAgICAgICA/IGN1cnJlbnRTdGF0ZS5jaGF0V2ViVmlld1JlZlxuICAgICAgICAgICAgICAgIDogY3VycmVudFN0YXRlLmNsYXNzaWNXZWJWaWV3UmVmO1xuICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkSXNMb2FkaW5nID0gY2hhdFxuICAgICAgICAgICAgICAgID8gY3VycmVudFN0YXRlLmlzQ2hhdExvYWRpbmdcbiAgICAgICAgICAgICAgICA6IGN1cnJlbnRTdGF0ZS5pc0NsYXNzaWNMb2FkaW5nO1xuXG4gICAgICAgICAgICAgIGlmICh1cGRhdGVkV2ViVmlld1JlZikge1xuICAgICAgICAgICAgICAgIGlmICghdXBkYXRlZElzTG9hZGluZykge1xuICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmVXZWJWaWV3LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICBjb21tdW5pY2F0ZVdpdGhXZWJWaWV3KHVwZGF0ZWRXZWJWaWV3UmVmKTtcbiAgICAgICAgICAgICAgICAgIHN0YXJ0KCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCfij7MgV2ViVmlldyByZWYgYXZhaWxhYmxlIGJ1dCBzdGlsbCBsb2FkaW5nLi4uJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IubWVzc2FnZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignU29tZXRoaW5nIHdlbnQgd3JvbmcnKTtcbiAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHN0YXJ0ID0gKCkgPT4ge1xuICBjb25zdCBzdGF0ZSA9IGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpLmdldFN0YXRlKCk7XG4gIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpLnNldFN0YXRlKHsgaXNWaXNpYmxlOiB0cnVlIH0pO1xuICB9LCBzdGF0ZS5hZnRlckRlbGF5ICogMTAwMCk7XG59O1xuXG5leHBvcnQgY29uc3QgY2xvc2VTcG90Q2hlY2sgPSBhc3luYyAoKSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc3RhdGVTZXJ2aWNlID0gZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gICAgY29uc3Qgc3RhdGUgPSBzdGF0ZVNlcnZpY2UuZ2V0U3RhdGUoKTtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgdHJhY2VJZDogc3RhdGUudHJhY2VJZCxcbiAgICAgIHRyaWdnZXJUb2tlbjogc3RhdGUudHJpZ2dlclRva2VuLFxuICAgIH07XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgYGh0dHBzOi8vJHtzdGF0ZS5kb21haW5OYW1lfS9hcGkvaW50ZXJuYWwvc3BvdGNoZWNrL2Rpc21pc3MvJHtzdGF0ZS5zcG90Y2hlY2tDb250YWN0SUR9YCxcbiAgICAgIHtcbiAgICAgICAgbWV0aG9kOiAnUFVUJyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpLFxuICAgICAgfVxuICAgICk7XG5cbiAgICBpZiAocmVzcG9uc2Uuc3RhdHVzICE9IDIwMCkge1xuICAgICAgY29uc29sZS5sb2coYEVycm9yOiAke3Jlc3BvbnNlLnN0YXR1c31gKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5sb2coJ0Vycm9yIHBhcnNpbmcgSlNPTjonLCBlcnJvcik7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVTdXJ2ZXlFbmQgPSAoKSA9PiB7XG4gIGNvbnN0IHN0YXRlU2VydmljZSA9IGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpO1xuICBjb25zdCBzdGF0ZSA9IHN0YXRlU2VydmljZS5nZXRTdGF0ZSgpO1xuICBjb25zdCB3ZWJWaWV3UmVmID1cbiAgICBzdGF0ZS5zcG90Q2hlY2tUeXBlID09PSAnY2hhdCdcbiAgICAgID8gc3RhdGUuY2hhdFdlYlZpZXdSZWZcbiAgICAgIDogc3RhdGUuY2xhc3NpY1dlYlZpZXdSZWY7XG5cbiAgd2ViVmlld1JlZj8uY3VycmVudD8uaW5qZWN0SmF2YVNjcmlwdChgXG4gICAgICAoZnVuY3Rpb24oKSB7XG4gICAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBNZXNzYWdlRXZlbnQoJ21lc3NhZ2UnLCB7XG4gICAgICAgICAgZGF0YTogJHtKU09OLnN0cmluZ2lmeSh7IHR5cGU6ICdVTk1PVU5UX0FQUCcgfSl9XG4gICAgICAgIH0pKTtcbiAgICAgIH0pKCk7XG4gICAgYCk7XG5cbiAgY29uc3QgdXBkYXRlZFN0YXRlOiBQYXJ0aWFsPFNwb3RjaGVja1N0YXRlPiA9IHtcbiAgICBpc1Zpc2libGU6IGZhbHNlLFxuICAgIGlzQ2xvc2VCdXR0b25FbmFibGVkOiBmYWxzZSxcbiAgICBpc0Z1bGxTY3JlZW5Nb2RlOiBmYWxzZSxcbiAgICBzcG90Y2hlY2tJRDogMCxcbiAgICBjdXJyZW50UXVlc3Rpb25IZWlnaHQ6IDAsXG4gICAgY2xvc2VCdXR0b25TdHlsZToge30sXG4gICAgc3BvdGNoZWNrQ29udGFjdElEOiAwLFxuICAgIHNwb3RjaGVja1VSTDogJycsXG4gICAgc3BvdGNoZWNrUG9zaXRpb246ICdib3R0b20nLFxuICAgIGlzTW91bnRlZDogZmFsc2UsXG4gICAgc3BvdENoZWNrVHlwZTogJycsXG4gICAgc2NyZWVuSGVpZ2h0OiAwLFxuICAgIGtleUJvYXJkSGVpZ2h0OiAwLFxuICAgIHRleHRQb3NpdGlvbjogMCxcbiAgICBzcG90Q2hlY2tzTW9kZTogJycsXG4gICAgYXZhdGFyRW5hYmxlZDogZmFsc2UsXG4gICAgYXZhdGFyVXJsOiAnJyxcbiAgfTtcblxuICBzdGF0ZVNlcnZpY2Uuc2V0U3RhdGUodXBkYXRlZFN0YXRlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRTcG90Y2hlY2tDb21wb25lbnRDc3NTdHlsZXMgPSAoc3RhdGU6IFNwb3RjaGVja1N0YXRlKSA9PiB7IFxuICBsZXQgc3R5bGVzID0ge31cbiAgbGV0IHdyYXBwZXJTdHlsZXMgPSB7fVxuICBsZXQgZXh0cmFQYWRkaW5nRm9yTWluaUNhcmRDbG9zZUJ1dHRvbklmVG9wUG9zaXRpb24gPSAwO1xuICBpZiAoc3RhdGUuaXNGdWxsU2NyZWVuTW9kZSAmJiBzdGF0ZS5pc1Zpc2libGUpIHtcbiAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgfTtcbiAgICBzdHlsZXMgPSB7XG4gICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICB9O1xuICB9XG4gIFxuICBpZiAoc3RhdGUuaXNWaXNpYmxlICYmIHN0YXRlLmlzTW91bnRlZCkge1xuXG4gICAgbGV0IGhlaWdodCA9IE1hdGgubWluKHN0YXRlLmN1cnJlbnRRdWVzdGlvbkhlaWdodCwgKHN0YXRlLm1heEhlaWdodCAqIHdpbmRvdy5pbm5lckhlaWdodCkpO1xuICAgIGlmKHN0YXRlLnNwb3RDaGVja3NNb2RlID09PSAnbWluaUNhcmQnKSB7XG4gICAgICBpZihzdGF0ZS5hdmF0YXJFbmFibGVkKSB7XG4gICAgICAgIGhlaWdodCA9IGhlaWdodCAtIDU2O1xuICAgICAgfVxuICAgICAgaWYoc3RhdGUuaXNDbG9zZUJ1dHRvbkVuYWJsZWQpIHtcbiAgICAgICAgaGVpZ2h0ID0gaGVpZ2h0IC0gNDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3dpdGNoIChzdGF0ZS5zcG90Y2hlY2tQb3NpdGlvbikge1xuICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgc3R5bGVzID0ge1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBoZWlnaHQ6IGhlaWdodCsncHgnLFxuICAgICAgICB9O1xuICAgICAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2ZsZXgtZW5kJyxcbiAgICAgICAgfTtcbiAgICAgICAgYnJlYWs7XG4gICAgICAgIFxuICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICAgIHN0eWxlcyA9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0KydweCcsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICB9O1xuICAgICAgICAgIGlmKHN0YXRlLnNwb3RDaGVja3NNb2RlID09PSAnbWluaUNhcmQnICYmIHN0YXRlLmlzQ2xvc2VCdXR0b25FbmFibGVkKSB7XG4gICAgICAgICAgICBleHRyYVBhZGRpbmdGb3JNaW5pQ2FyZENsb3NlQnV0dG9uSWZUb3BQb3NpdGlvbiA9IDMwO1xuICAgICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICAgICAgXG4gICAgICAgIGNhc2UgJ2NlbnRlcic6XG4gICAgICAgICAgc3R5bGVzID0ge1xuICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQrJ3B4JyxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHdyYXBwZXJTdHlsZXMgPSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2NlbnRlcicsXG4gICAgICAgICAgfTtcbiAgICAgICAgYnJlYWs7XG4gICAgICAgIFxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIFxuICByZXR1cm4ge1xuICAgIHdyYXBwZXJTdHlsZXM6IHtcbiAgICAgIHBvc2l0aW9uOiAnZml4ZWQnLCBcbiAgICAgIHdpZHRoOiAnMTAwJScsIFxuICAgICAgaGVpZ2h0OiAnMTAwJScsIFxuICAgICAgdG9wOiAnMCcsIFxuICAgICAgbGVmdDogJzAnLCBcbiAgICAgIGJhY2tncm91bmRDb2xvcjogJ3JnYmEoMCwgMCwgMCwgMC4zKScsIFxuICAgICAgekluZGV4OiAnOTk5OTk5OTknLFxuICAgICAgZGlzcGxheTogJ25vbmUnLFxuICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAuLi53cmFwcGVyU3R5bGVzXG4gICAgfSxcbiAgICBzdHlsZXM6IHtcbiAgICAgIGRpc3BsYXk6ICdub25lJyxcbiAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgICAgcGFkZGluZ1RvcDogZXh0cmFQYWRkaW5nRm9yTWluaUNhcmRDbG9zZUJ1dHRvbklmVG9wUG9zaXRpb24rJ3B4JyxcbiAgICAgIC4uLnN0eWxlcyxcbiAgICB9XG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgY2xvc2VTcG90Q2hlY2tBbmRIYW5kbGVTdXJ2ZXlFbmQgPSBhc3luYyAoKSA9PiB7XG4gIGF3YWl0IGNsb3NlU3BvdENoZWNrKCk7XG4gIGhhbmRsZVN1cnZleUVuZCgpO1xufTsiXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { initializeSpotChecks, trackScreen, trackEvent } from './SpotCheck';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYW5ndWxhci11aS9saWIvc3BvdGNoZWNrcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGFBQWEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGluaXRpYWxpemVTcG90Q2hlY2tzLCB0cmFja1NjcmVlbiwgdHJhY2tFdmVudCB9IGZyb20gJy4vU3BvdENoZWNrJztcbmV4cG9ydCB0eXBlIHtcbiAgVXNlckRldGFpbHMsXG4gIFZhcmlhYmxlcyxcbiAgQ3VzdG9tUHJvcGVydGllcyxcbiAgVHJhY2tTY3JlZW5Qcm9wcyxcbiAgVHJhY2tFdmVudFByb3BzLFxuICBJbml0aWFsaXplU3BvdENoZWNrc1Byb3BzLFxufSBmcm9tICcuL3R5cGVzJztcbiJdfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export const getStoredUUID = () => {
|
|
2
|
+
return localStorage.getItem('SurveySparrowUUID') || null;
|
|
3
|
+
};
|
|
4
|
+
export const setUUID = (uuid) => {
|
|
5
|
+
localStorage.setItem('SurveySparrowUUID', uuid);
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvcmFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hbmd1bGFyLXVpL2xpYi9zcG90Y2hlY2tzL3N0b3JhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRTtJQUM5QixPQUFPLFlBQVksQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsSUFBSSxJQUFJLENBQUM7QUFDN0QsQ0FBQyxDQUFBO0FBRUQsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUU7SUFDcEMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNwRCxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgZ2V0U3RvcmVkVVVJRCA9ICgpID0+IHtcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ1N1cnZleVNwYXJyb3dVVUlEJykgfHwgbnVsbDtcbn1cblxuZXhwb3J0IGNvbnN0IHNldFVVSUQgPSAodXVpZDogc3RyaW5nKSA9PiB7XG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ1N1cnZleVNwYXJyb3dVVUlEJywgdXVpZCk7XG59Il19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYW5ndWxhci11aS9saWIvc3BvdGNoZWNrcy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTcG90Y2hlY2tTdGF0ZSB7XG4gIGlzVmlzaWJsZTogYm9vbGVhbjtcbiAgc3BvdGNoZWNrUG9zaXRpb246IHN0cmluZztcbiAgc3BvdGNoZWNrVVJMOiBzdHJpbmc7XG4gIHNwb3RjaGVja0lEOiBudW1iZXI7XG4gIHNwb3RjaGVja0NvbnRhY3RJRDogbnVtYmVyO1xuICBhZnRlckRlbGF5OiBudW1iZXI7XG4gIG1heEhlaWdodDogbnVtYmVyO1xuICBjdXJyZW50UXVlc3Rpb25IZWlnaHQ6IG51bWJlcjtcbiAgaXNGdWxsU2NyZWVuTW9kZTogYm9vbGVhbjtcbiAgaXNCYW5uZXJJbWFnZU9uOiBib29sZWFuO1xuICB0cmlnZ2VyVG9rZW46IHN0cmluZztcbiAgY2xvc2VCdXR0b25TdHlsZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgaXNDbG9zZUJ1dHRvbkVuYWJsZWQ6IGJvb2xlYW47XG4gIGlzU3BvdFBhc3NlZDogYm9vbGVhbjtcbiAgaXNDaGVja3NQYXNzZWQ6IGJvb2xlYW47XG4gIGN1c3RvbUV2ZW50c1Nwb3RDaGVja3M6IFJlY29yZDxzdHJpbmcsIGFueT5bXTtcbiAgdGFyZ2V0VG9rZW46IHN0cmluZztcbiAgZG9tYWluTmFtZTogc3RyaW5nO1xuICB1c2VyRGV0YWlsczogVXNlckRldGFpbHM7XG4gIHZhcmlhYmxlczogVmFyaWFibGVzO1xuICBjdXN0b21Qcm9wZXJ0aWVzOiBDdXN0b21Qcm9wZXJ0aWVzO1xuICB0cmFjZUlkOiBzdHJpbmc7XG4gIGlzQ2xhc3NpY0xvYWRpbmc6IGJvb2xlYW47XG4gIGlzQ2hhdExvYWRpbmc6IGJvb2xlYW47XG4gIGNsYXNzaWNVcmw6IHN0cmluZztcbiAgY2hhdFVybDogc3RyaW5nO1xuICBjbGFzc2ljV2ViVmlld1JlZjogYW55IHwgbnVsbDtcbiAgY2hhdFdlYlZpZXdSZWY6IGFueSB8IG51bGw7XG4gIGZpbHRlcmVkU3BvdENoZWNrczogUmVjb3JkPHN0cmluZywgYW55PltdO1xuICBzcG90Q2hlY2tUeXBlOiBTdHJpbmc7XG4gIGlzTW91bnRlZDogYm9vbGVhbjtcbiAgdGV4dFBvc2l0aW9uOiBudW1iZXI7XG4gIHNjcmVlbkhlaWdodDogbnVtYmVyO1xuICBrZXlCb2FyZEhlaWdodDogbnVtYmVyO1xuICBzcG90Q2hlY2tzTW9kZTogc3RyaW5nO1xuICBhdmF0YXJFbmFibGVkOiBib29sZWFuO1xuICBhdmF0YXJVcmw6IHN0cmluZztcbiAgc2NyZWVud2lzZVVzZXJEZXRhaWxzOiBSZWNvcmQ8c3RyaW5nLCBVc2VyRGV0YWlscyB8IHVuZGVmaW5lZD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXNlckRldGFpbHMge1xuICB1dWlkPzogc3RyaW5nO1xuICBlbWFpbD86IHN0cmluZztcbiAgZmlyc3ROYW1lPzogc3RyaW5nO1xuICBsYXN0TmFtZT86IHN0cmluZztcbiAgbW9iaWxlPzogbnVtYmVyO1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmFyaWFibGVzIHtcbiAgc3BhcnJvd0xhbmc/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21Qcm9wZXJ0aWVzIHtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYWNrU2NyZWVuUHJvcHMge1xuICBzY3JlZW46IHN0cmluZztcbiAgb3B0aW9ucz86IHtcbiAgICB2YXJpYWJsZXM/OiBWYXJpYWJsZXM7XG4gICAgY3VzdG9tUHJvcGVydGllcz86IEN1c3RvbVByb3BlcnRpZXM7XG4gICAgdXNlckRldGFpbHM/OiBVc2VyRGV0YWlscztcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFja0V2ZW50UHJvcHMge1xuICBzY3JlZW46IHN0cmluZztcbiAgZXZlbnQ6IHtcbiAgICBba2V5OiBzdHJpbmddOiB7XG4gICAgICBba2V5OiBzdHJpbmddOiBzdHJpbmc7XG4gICAgfTtcbiAgfTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbml0aWFsaXplU3BvdENoZWNrc1Byb3BzIHtcbiAgZG9tYWluTmFtZTogc3RyaW5nO1xuICB0YXJnZXRUb2tlbjogc3RyaW5nO1xuICB1c2VyRGV0YWlscz86IFVzZXJEZXRhaWxzO1xuICB2YXJpYWJsZXM/OiBWYXJpYWJsZXM7XG4gIGN1c3RvbVByb3BlcnRpZXM/OiBDdXN0b21Qcm9wZXJ0aWVzO1xufVxuIl19
|