surveysparrow-ionic-plugin 1.0.7-beta.15 → 1.0.7-beta.17
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/spotchecks/api.mjs +4 -4
- package/dist/angular-ui/esm2022/spotchecks/helpers.mjs +2 -2
- package/dist/angular-ui/esm2022/spotchecks/types.mjs +1 -1
- package/dist/angular-ui/fesm2022/angular-ui.mjs +4 -4
- package/dist/angular-ui/fesm2022/angular-ui.mjs.map +1 -1
- package/dist/angular-ui/spotchecks/types.d.ts +4 -4
- package/dist/esm/angular-ui/lib/spotchecks/api.js +3 -3
- package/dist/esm/angular-ui/lib/spotchecks/api.js.map +1 -1
- package/dist/esm/angular-ui/lib/spotchecks/helpers.js +1 -1
- package/dist/esm/angular-ui/lib/spotchecks/helpers.js.map +1 -1
- package/dist/esm/angular-ui/lib/spotchecks/types.d.ts +4 -4
- package/dist/esm/angular-ui/lib/spotchecks/types.js.map +1 -1
- package/dist/plugin.cjs.js +4 -4
- package/dist/plugin.cjs.js.map +1 -1
- package/dist/plugin.js +4 -4
- package/dist/plugin.js.map +1 -1
- package/package.json +1 -1
- package/src/angular-ui/lib/spotchecks/api.ts +3 -3
- package/src/angular-ui/lib/spotchecks/helpers.ts +1 -1
- package/src/angular-ui/lib/spotchecks/types.ts +4 -4
|
@@ -9,13 +9,13 @@ export const sendTrackScreenRequest = async ({ screen, options, }) => {
|
|
|
9
9
|
let variables = {};
|
|
10
10
|
let customProperties = {};
|
|
11
11
|
let userDetails = {};
|
|
12
|
-
if (options.variables && Object.keys(options.variables).length > 0) {
|
|
12
|
+
if (options && options.variables && Object.keys(options.variables).length > 0) {
|
|
13
13
|
variables = { ...oldState.variables, ...options.variables };
|
|
14
14
|
}
|
|
15
|
-
if (options.customProperties && Object.keys(options.customProperties).length > 0) {
|
|
15
|
+
if (options && options.customProperties && Object.keys(options.customProperties).length > 0) {
|
|
16
16
|
customProperties = { ...oldState.customProperties, ...options.customProperties };
|
|
17
17
|
}
|
|
18
|
-
if (options.userDetails && Object.keys(options.userDetails).length > 0) {
|
|
18
|
+
if (options && options.userDetails && Object.keys(options.userDetails).length > 0) {
|
|
19
19
|
userDetails = { ...oldState.userDetails, ...options.userDetails };
|
|
20
20
|
}
|
|
21
21
|
let traceId = oldState.traceId;
|
|
@@ -236,4 +236,4 @@ export const sendTrackEventRequest = async ({ screen, event }) => {
|
|
|
236
236
|
return { valid: false, error: error.message };
|
|
237
237
|
}
|
|
238
238
|
};
|
|
239
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FuZ3VsYXItdWkvbGliL3Nwb3RjaGVja3MvYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckQsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEtBQUssRUFBRSxFQUMzQyxNQUFNLEVBQ04sT0FBTyxHQUNVLEVBQUUsRUFBRTtJQUNyQixJQUFJLENBQUM7UUFDSCxNQUFNLHFCQUFxQixHQUFHLHdCQUF3QixFQUFFLENBQUM7UUFDekQsTUFBTSxRQUFRLEdBQUcscUJBQXFCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEQsSUFBSSxTQUFTLEdBQUcsRUFBZSxDQUFDO1FBQ2hDLElBQUksZ0JBQWdCLEdBQUcsRUFBc0IsQ0FBQztRQUM5QyxJQUFJLFdBQVcsR0FBRyxFQUFpQixDQUFDO1FBRXBDLElBQUksT0FBTyxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDbkUsU0FBUyxHQUFHLEVBQUUsR0FBRyxRQUFRLENBQUMsU0FBUyxFQUFFLEdBQUcsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQzlELENBQUM7UUFDRCxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNqRixnQkFBZ0Is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N0QsQ0FBQzs0QkFDSCxDQUFDOzRCQUFDLE9BQU8sS0FBVSxFQUFFLENBQUM7Z0NBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzRCQUNqQyxDQUFDO3dCQUNILENBQUM7b0JBQ0gsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQztZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFVLEVBQUUsQ0FBQztRQUNwQixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hELENBQUM7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZW5lcmF0ZVRyYWNlSWQsIGdldE9TLCBzZXRBcHBlYXJhbmNlIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IGdldFN0b3JlZFVVSUQsIHNldFVVSUQgfSBmcm9tICcuL3N0b3JhZ2UnO1xuaW1wb3J0IHsgVHJhY2tTY3JlZW5Qcm9wcywgVXNlckRldGFpbHMsIFZhcmlhYmxlcywgQ3VzdG9tUHJvcGVydGllcywgVHJhY2tFdmVudFByb3BzIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcblxuZXhwb3J0IGNvbnN0IHNlbmRUcmFja1NjcmVlblJlcXVlc3QgPSBhc3luYyAoe1xuICBzY3JlZW4sXG4gIG9wdGlvbnMsXG59OiBUcmFja1NjcmVlblByb3BzKSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc3BvdGNoZWNrU3RhdGVTZXJ2aWNlID0gZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gICAgY29uc3Qgb2xkU3RhdGUgPSBzcG90Y2hlY2tTdGF0ZVNlcnZpY2UuZ2V0U3RhdGUoKTtcbiAgICBsZXQgdmFyaWFibGVzID0ge30gYXMgVmFyaWFibGVzO1xuICAgIGxldCBjdXN0b21Qcm9wZXJ0aWVzID0ge30gYXMgQ3VzdG9tUHJvcGVydGllcztcbiAgICBsZXQgdXNlckRldGFpbHMgPSB7fSBhcyBVc2VyRGV0YWlsczsgICAgXG5cbiAgICBpZiAob3B0aW9ucy52YXJpYWJsZXMgJiYgT2JqZWN0LmtleXMob3B0aW9ucy52YXJpYWJsZXMpLmxlbmd0aCA+IDApIHtcbiAgICAgIHZhcmlhYmxlcyA9IHsgLi4ub2xkU3RhdGUudmFyaWFibGVzLCAuLi5vcHRpb25zLnZhcmlhYmxlcyB9O1xuICAgIH1cbiAgICBpZiAob3B0aW9ucy5jdXN0b21Qcm9wZXJ0aWVzICYmIE9iamVjdC5rZXlzKG9wdGlvbnMuY3VzdG9tUHJvcGVydGllcykubGVuZ3RoID4gMCkge1xuICAgICAgY3VzdG9tUHJvcGVydGllcyA9IHsgLi4ub2xkU3RhdGUuY3VzdG9tUHJvcGVydGllcywgLi4ub3B0aW9ucy5jdXN0b21Qcm9wZXJ0aWVzIH07XG4gICAgfVxuICAgIGlmIChvcHRpb25zLnVzZXJEZXRhaWxzICYmIE9iamVjdC5rZXlzKG9wdGlvbnMudXNlckRldGFpbHMpLmxlbmd0aCA+IDApIHtcbiAgICAgIHVzZXJEZXRhaWxzID0geyAuLi5vbGRTdGF0ZS51c2VyRGV0YWlscywgLi4ub3B0aW9ucy51c2VyRGV0YWlscyB9O1xuICAgIH1cblxuICAgIGxldCB0cmFjZUlkID0gb2xkU3RhdGUudHJhY2VJZDtcbiAgICBpZiAoIXRyYWNlSWQpIHtcbiAgICAgIHRyYWNlSWQgPSBnZW5lcmF0ZVRyYWNlSWQoKTtcbiAgICB9XG5cbiAgICBpZiAoIXVzZXJEZXRhaWxzLnV1aWQgJiYgIXVzZXJEZXRhaWxzLmVtYWlsICYmICF1c2VyRGV0YWlscy5tb2JpbGUpIHtcbiAgICAgIGNvbnN0IHV1aWQgPSBnZXRTdG9yZWRVVUlEKCk7XG4gICAgICBpZiAodXVpZCkge1xuICAgICAgICB1c2VyRGV0YWlscy51dWlkID0gdXVpZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoe1xuICAgICAgdHJhY2VJZCxcbiAgICAgIHZhcmlhYmxlcyxcbiAgICAgIGN1c3RvbVByb3BlcnRpZXMsXG4gICAgICB1c2VyRGV0YWlscyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHN0YXRlID0gc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLmdldFN0YXRlKCk7XG4gICAgbGV0IHsgaXNTcG90UGFzc2VkLCBpc0NoZWNrc1Bhc3NlZCB9ID0gc3RhdGU7XG4gICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgIHNjcmVlbk5hbWU6IHNjcmVlbixcbiAgICAgIHZhcmlhYmxlczogc3RhdGUudmFyaWFibGVzLFxuICAgICAgdXNlckRldGFpbHM6IHN0YXRlLnVzZXJEZXRhaWxzLFxuICAgICAgdmlzaXRvcjoge1xuICAgICAgICBkZXZpY2VUeXBlOiAnTU9CSUxFJyxcbiAgICAgICAgb3BlcmF0aW5nU3lzdGVtOiBhd2FpdCBnZXRPUygpLFxuICAgICAgICBzY3JlZW5SZXNvbHV0aW9uOiB7XG4gICAgICAgICAgaGVpZ2h0OiB3aW5kb3cuaW5uZXJIZWlnaHQsXG4gICAgICAgICAgd2lkdGg6IHdpbmRvdy5pbm5lcldpZHRoLFxuICAgICAgICB9LFxuICAgICAgICBjdXJyZW50RGF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICB0aW1lem9uZTogSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lLFxuICAgICAgfSxcbiAgICAgIHRyYWNlSWQ6IHN0YXRlLnRyYWNlSWQsXG4gICAgICBjdXN0b21Qcm9wZXJ0aWVzOiBzdGF0ZS5jdXN0b21Qcm9wZXJ0aWVzLFxuICAgIH07XG5cbiAgICBjb25zdCB1cmwgPSBgaHR0cHM6Ly8ke3N0YXRlLmRvbWFpbk5hbWV9L2FwaS9pbnRlcm5hbC9zcG90Y2hlY2svd2lkZ2V0LyR7c3RhdGUudGFyZ2V0VG9rZW59L3Byb3BlcnRpZXM/aXNTcG90Q2hlY2s9dHJ1ZSZzZGs9SU9TYDtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLnBvc3QodXJsLCBwYXlsb2FkLCB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYocmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlSnNvbiA9IHJlc3BvbnNlLmRhdGE7XG5cbiAgICAgIGlmIChyZXNwb25zZUpzb24udXVpZCkge1xuICAgICAgICBzZXRVVUlEKHJlc3BvbnNlSnNvbi51dWlkKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHJlc3BvbnNlSnNvbj8uc2hvdykge1xuICAgICAgICBpZiAocmVzcG9uc2VKc29uPy5zaG93KSB7XG4gICAgICAgICAgY29uc3QgYXBwZWFyYW5jZV9yZXNwb25zZSA9IGF3YWl0IHNldEFwcGVhcmFuY2UoXG4gICAgICAgICAgICByZXNwb25zZUpzb24sXG4gICAgICAgICAgICBzY3JlZW4sXG4gICAgICAgICAgICBzdGF0ZS5kb21haW5OYW1lLFxuICAgICAgICAgICAgdHJhY2VJZCxcbiAgICAgICAgICAgIHN0YXRlLnZhcmlhYmxlc1xuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGFwcGVhcmFuY2VfcmVzcG9uc2UpIHtcbiAgICAgICAgICAgIGlzU3BvdFBhc3NlZCA9IHRydWU7XG4gICAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBpc1Nwb3RQYXNzZWQgfSk7XG4gICAgICAgICAgICByZXR1cm4geyB2YWxpZDogdHJ1ZSB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXG4gICAgICBpZiAoIWlzU3BvdFBhc3NlZCAmJiByZXNwb25zZUpzb24/LmNoZWNrUGFzc2VkKSB7XG4gICAgICAgIGlmIChyZXNwb25zZUpzb24uY2hlY2tDb25kaXRpb24pIHtcbiAgICAgICAgICBjb25zdCBjaGVja0NvbmRpdGlvbiA9IHJlc3BvbnNlSnNvbi5jaGVja0NvbmRpdGlvbjtcbiAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBhZnRlckRlbGF5OiBjaGVja0NvbmRpdGlvbi5hZnRlckRlbGF5IHx8IDAgfSk7XG4gICAgICAgICAgaWYgKGNoZWNrQ29uZGl0aW9uLmN1c3RvbUV2ZW50KSB7XG4gICAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBjdXN0b21FdmVudHNTcG90Q2hlY2tzOiBbcmVzcG9uc2VKc29uXSB9KTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXBwZWFyYW5jZV9yZXNwb25zZSA9IGF3YWl0IHNldEFwcGVhcmFuY2UoXG4gICAgICAgICAgcmVzcG9uc2VKc29uLFxuICAgICAgICAgIHNjcmVlbixcbiAgICAgICAgICBzdGF0ZS5kb21haW5OYW1lLFxuICAgICAgICAgIHRyYWNlSWQsXG4gICAgICAgICAgc3RhdGUudmFyaWFibGVzXG4gICAgICAgICk7XG4gICAgICAgIGlmIChhcHBlYXJhbmNlX3Jlc3BvbnNlKSB7XG4gICAgICAgICAgaXNDaGVja3NQYXNzZWQgPSB0cnVlO1xuICAgICAgICAgIHNwb3RjaGVja1N0YXRlU2VydmljZS5zZXRTdGF0ZSh7IGlzQ2hlY2tzUGFzc2VkIH0pO1xuICAgICAgICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFpc1Nwb3RQYXNzZWQgJiYgIWlzQ2hlY2tzUGFzc2VkICYmIHJlc3BvbnNlSnNvbj8ubXVsdGlTaG93ICE9IG51bGwpIHtcbiAgICAgICAgaWYgKHJlc3BvbnNlSnNvbi5tdWx0aVNob3cpIHtcbiAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBjdXN0b21FdmVudHNTcG90Q2hlY2tzOiByZXNwb25zZUpzb24ucmVzdWx0YW50U3BvdENoZWNrIH0pO1xuXG4gICAgICAgICAgbGV0IHNlbGVjdGVkU3BvdENoZWNrID0ge307XG4gICAgICAgICAgbGV0IG1pbkRlbGF5OiBudW1iZXIgPSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7XG5cbiAgICAgICAgICBmb3IgKGNvbnN0IHNwb3RjaGVjayBvZiByZXNwb25zZUpzb24ucmVzdWx0YW50U3BvdENoZWNrKSB7XG4gICAgICAgICAgICBjb25zdCBjaGVja3MgPSBzcG90Y2hlY2s/LmNoZWNrcyB8fCB7fTtcbiAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhjaGVja3MpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICBtaW5EZWxheSA9IDA7XG4gICAgICAgICAgICAgIHNlbGVjdGVkU3BvdENoZWNrID0gc3BvdGNoZWNrO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjaGVja3MuYWZ0ZXJEZWxheSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRlbGF5ID0gcGFyc2VGbG9hdChjaGVja3MuYWZ0ZXJEZWxheSk7XG4gICAgICAgICAgICAgIGlmIChtaW5EZWxheSA+IGRlbGF5KSB7XG4gICAgICAgICAgICAgICAgbWluRGVsYXkgPSBkZWxheTtcbiAgICAgICAgICAgICAgICBzZWxlY3RlZFNwb3RDaGVjayA9IHNwb3RjaGVjaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhzZWxlY3RlZFNwb3RDaGVjaykubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLnNldFN0YXRlKHsgYWZ0ZXJEZWxheTogbWluRGVsYXkgfSk7XG4gICAgICAgICAgICBjb25zdCBhcHBlYXJhbmNlX3Jlc3BvbnNlID0gYXdhaXQgc2V0QXBwZWFyYW5jZShcbiAgICAgICAgICAgICAgc2VsZWN0ZWRTcG90Q2hlY2ssXG4gICAgICAgICAgICAgIHNjcmVlbixcbiAgICAgICAgICAgICAgc3RhdGUuZG9tYWluTmFtZSxcbiAgICAgICAgICAgICAgdHJhY2VJZCxcbiAgICAgICAgICAgICAgc3RhdGUudmFyaWFibGVzXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGFwcGVhcmFuY2VfcmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsaWQ6IHRydWUgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3BvbnNlSnNvbj8ucmVhc29uLnRvU3RyaW5nKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlY2VpdmVkIHN0YXR1cyBjb2RlICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgIHJldHVybiB7IHZhbGlkOiBmYWxzZSwgZXJyb3I6IGVycm9yLm1lc3NhZ2UgfTtcbiAgfVxufTtcblxuXG5leHBvcnQgY29uc3Qgc2VuZFRyYWNrRXZlbnRSZXF1ZXN0ID0gYXN5bmMgKHsgc2NyZWVuLCBldmVudCB9OiBUcmFja0V2ZW50UHJvcHMpID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBpbnRNYXggPSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7XG4gICAgY29uc3Qgc3RhdGUgPSBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UoKS5nZXRTdGF0ZSgpO1xuICAgIGxldCBzZWxlY3RlZFNwb3RDaGVja0lEID0gaW50TWF4O1xuICAgIGxldCB7IGlzU3BvdFBhc3NlZCB9ID0gc3RhdGU7XG4gICAgaWYgKHN0YXRlLmN1c3RvbUV2ZW50c1Nwb3RDaGVja3MubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZXZlbnRLZXlzID0gT2JqZWN0LmtleXMoZXZlbnQpO1xuICAgICAgZm9yIChjb25zdCBzcG90Q2hlY2sgb2Ygc3RhdGUuY3VzdG9tRXZlbnRzU3BvdENoZWNrcykge1xuICAgICAgICBjb25zdCBjaGVja3MgPSBzcG90Q2hlY2s/LlsnY2hlY2tzJ10gPz8gc3BvdENoZWNrPy5bJ2NoZWNrQ29uZGl0aW9uJ107XG5cbiAgICAgICAgaWYgKGNoZWNrcykge1xuICAgICAgICAgIGNvbnN0IGN1c3RvbUV2ZW50ID0gY2hlY2tzPy5jdXN0b21FdmVudDtcblxuICAgICAgICAgIGlmIChldmVudEtleXMuaW5jbHVkZXMoY3VzdG9tRXZlbnQ/LmV2ZW50TmFtZSkpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkU3BvdENoZWNrSUQgPVxuICAgICAgICAgICAgICBzcG90Q2hlY2s/LlsnaWQnXSA/PyBzcG90Q2hlY2s/Llsnc3BvdENoZWNrSWQnXSA/PyBpbnRNYXg7XG4gICAgICAgICAgICBsZXQgcGF5bG9hZFVzZXJEZXRhaWxzID0geyAuLi5zdGF0ZS51c2VyRGV0YWlscyB9O1xuXG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWRTcG90Q2hlY2tJRCAhPT0gaW50TWF4KSB7XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAhcGF5bG9hZFVzZXJEZXRhaWxzPy5lbWFpbCAmJlxuICAgICAgICAgICAgICAgICFwYXlsb2FkVXNlckRldGFpbHM/LnV1aWQgJiZcbiAgICAgICAgICAgICAgICAhcGF5bG9hZFVzZXJEZXRhaWxzPy5tb2JpbGVcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdXVpZCA9IGdldFN0b3JlZFVVSUQoKTtcbiAgICAgICAgICAgICAgICBpZiAodXVpZCkge1xuICAgICAgICAgICAgICAgICAgcGF5bG9hZFVzZXJEZXRhaWxzLnV1aWQgPSB1dWlkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgICAgICAgICAgICAgc2NyZWVuTmFtZTogc2NyZWVuLFxuICAgICAgICAgICAgICAgIHZhcmlhYmxlczogc3RhdGUudmFyaWFibGVzLFxuICAgICAgICAgICAgICAgIHVzZXJEZXRhaWxzOiBwYXlsb2FkVXNlckRldGFpbHMsXG4gICAgICAgICAgICAgICAgdmlzaXRvcjoge1xuICAgICAgICAgICAgICAgICAgZGV2aWNlVHlwZTogJ01PQklMRScsXG4gICAgICAgICAgICAgICAgICBvcGVyYXRpbmdTeXN0ZW06IGF3YWl0IGdldE9TKCksXG4gICAgICAgICAgICAgICAgICBzY3JlZW5SZXNvbHV0aW9uOiB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogd2luZG93LmlubmVySGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogd2luZG93LmlubmVyV2lkdGgsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgY3VycmVudERhdGU6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICAgIHRpbWV6b25lOiBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBzcG90Q2hlY2tJZDogc2VsZWN0ZWRTcG90Q2hlY2tJRCxcbiAgICAgICAgICAgICAgICBldmVudFRyaWdnZXI6IHtcbiAgICAgICAgICAgICAgICAgIGN1c3RvbUV2ZW50OiBldmVudCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHRyYWNlSWQ6IHN0YXRlLnRyYWNlSWQsXG4gICAgICAgICAgICAgICAgY3VzdG9tUHJvcGVydGllczogc3RhdGUuY3VzdG9tUHJvcGVydGllcyxcbiAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICBjb25zdCB1cmwgPSBgaHR0cHM6Ly8ke3N0YXRlLmRvbWFpbk5hbWV9L2FwaS9pbnRlcm5hbC9zcG90Y2hlY2svd2lkZ2V0LyR7c3RhdGUudGFyZ2V0VG9rZW59L2V2ZW50VHJpZ2dlcj9pc1Nwb3RDaGVjaz10cnVlYDtcblxuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MucG9zdCh1cmwsIHBheWxvYWQsIHtcbiAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlSnNvbiA9IHJlc3BvbnNlLmRhdGE7XG4gICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2VKc29uPy5zaG93ICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlSnNvbj8uc2hvdykge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGFwcGVhcmFuY2VfcmVzcG9uc2UgPSBhd2FpdCBzZXRBcHBlYXJhbmNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VKc29uLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2NyZWVuLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUuZG9tYWluTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnRyYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS52YXJpYWJsZXNcbiAgICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKGFwcGVhcmFuY2VfcmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpLnNldFN0YXRlKHsgaXNTcG90UGFzc2VkOiB0cnVlIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNTcG90UGFzc2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGlmICghaXNTcG90UGFzc2VkICYmIHJlc3BvbnNlSnNvbj8uZXZlbnRTaG93KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZUpzb24/LmNoZWNrQ29uZGl0aW9uICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGVja0NvbmRpdGlvbiA9IHJlc3BvbnNlSnNvbj8uY2hlY2tDb25kaXRpb247XG4gICAgICAgICAgICAgICAgICAgICAgZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCkuc2V0U3RhdGUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYWZ0ZXJEZWxheTogY2hlY2tDb25kaXRpb24/LmFmdGVyRGVsYXkgPz8gMCxcbiAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0NvbmRpdGlvbj8uY3VzdG9tRXZlbnQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCkuc2V0U3RhdGUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhZnRlckRlbGF5OiBjaGVja0NvbmRpdGlvbj8uY3VzdG9tRXZlbnQ/LmRlbGF5SW5TZWNvbmRzID8/IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBhcHBlYXJhbmNlX3Jlc3BvbnNlID0gYXdhaXQgc2V0QXBwZWFyYW5jZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZUpzb24sXG4gICAgICAgICAgICAgICAgICAgICAgc2NyZWVuLFxuICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLmRvbWFpbk5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGUudHJhY2VJZCxcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS52YXJpYWJsZXNcbiAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoYXBwZWFyYW5jZV9yZXNwb25zZSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3BvbnNlSnNvbj8ucmVhc29uLnRvU3RyaW5nKCkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlY2VpdmVkIHN0YXR1cyBjb2RlICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCcnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCcnKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICByZXR1cm4geyB2YWxpZDogZmFsc2UsIGVycm9yOiBlcnJvci5tZXNzYWdlIH07XG4gIH1cbn07Il19
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2FuZ3VsYXItdWkvbGliL3Nwb3RjaGVja3MvYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVuRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDckQsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBRTFCLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEtBQUssRUFBRSxFQUMzQyxNQUFNLEVBQ04sT0FBTyxHQUNVLEVBQUUsRUFBRTtJQUNyQixJQUFJLENBQUM7UUFDSCxNQUFNLHFCQUFxQixHQUFHLHdCQUF3QixFQUFFLENBQUM7UUFDekQsTUFBTSxRQUFRLEdBQUcscUJBQXFCLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDbEQsSUFBSSxTQUFTLEdBQUcsRUFBZSxDQUFDO1FBQ2hDLElBQUksZ0JBQWdCLEdBQUcsRUFBc0IsQ0FBQztRQUM5QyxJQUFJLFdBQVcsR0FBRyxFQUFpQixDQUFDO1FBRXBDLElBQUksT0FBTyxJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQzlFLFNBQVMsR0FBRyxFQUFFLEdBQUcsUUFBUSxDQUFDLFNBQVMsRUFBRSxHQUFHLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUM5RCxDQUFDO1FBQ0QsSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLGdCQUFnQixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFB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LENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztnQ0FDN0QsQ0FBQzs0QkFDSCxDQUFDOzRCQUFDLE9BQU8sS0FBVSxFQUFFLENBQUM7Z0NBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDOzRCQUNqQyxDQUFDO3dCQUNILENBQUM7b0JBQ0gsQ0FBQztnQkFDSCxDQUFDO1lBQ0gsQ0FBQztZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdEIsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RCLENBQUM7SUFDSCxDQUFDO0lBQUMsT0FBTyxLQUFVLEVBQUUsQ0FBQztRQUNwQixPQUFPLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2hELENBQUM7QUFDSCxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZW5lcmF0ZVRyYWNlSWQsIGdldE9TLCBzZXRBcHBlYXJhbmNlIH0gZnJvbSAnLi9oZWxwZXJzJztcbmltcG9ydCB7IGdldFN0b3JlZFVVSUQsIHNldFVVSUQgfSBmcm9tICcuL3N0b3JhZ2UnO1xuaW1wb3J0IHsgVHJhY2tTY3JlZW5Qcm9wcywgVXNlckRldGFpbHMsIFZhcmlhYmxlcywgQ3VzdG9tUHJvcGVydGllcywgVHJhY2tFdmVudFByb3BzIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UgfSBmcm9tICcuL2hlbHBlcnMnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcblxuZXhwb3J0IGNvbnN0IHNlbmRUcmFja1NjcmVlblJlcXVlc3QgPSBhc3luYyAoe1xuICBzY3JlZW4sXG4gIG9wdGlvbnMsXG59OiBUcmFja1NjcmVlblByb3BzKSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc3BvdGNoZWNrU3RhdGVTZXJ2aWNlID0gZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gICAgY29uc3Qgb2xkU3RhdGUgPSBzcG90Y2hlY2tTdGF0ZVNlcnZpY2UuZ2V0U3RhdGUoKTtcbiAgICBsZXQgdmFyaWFibGVzID0ge30gYXMgVmFyaWFibGVzO1xuICAgIGxldCBjdXN0b21Qcm9wZXJ0aWVzID0ge30gYXMgQ3VzdG9tUHJvcGVydGllcztcbiAgICBsZXQgdXNlckRldGFpbHMgPSB7fSBhcyBVc2VyRGV0YWlsczsgICAgXG5cbiAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnZhcmlhYmxlcyAmJiBPYmplY3Qua2V5cyhvcHRpb25zLnZhcmlhYmxlcykubGVuZ3RoID4gMCkge1xuICAgICAgdmFyaWFibGVzID0geyAuLi5vbGRTdGF0ZS52YXJpYWJsZXMsIC4uLm9wdGlvbnMudmFyaWFibGVzIH07XG4gICAgfVxuICAgIGlmIChvcHRpb25zICYmIG9wdGlvbnMuY3VzdG9tUHJvcGVydGllcyAmJiBPYmplY3Qua2V5cyhvcHRpb25zLmN1c3RvbVByb3BlcnRpZXMpLmxlbmd0aCA+IDApIHtcbiAgICAgIGN1c3RvbVByb3BlcnRpZXMgPSB7IC4uLm9sZFN0YXRlLmN1c3RvbVByb3BlcnRpZXMsIC4uLm9wdGlvbnMuY3VzdG9tUHJvcGVydGllcyB9O1xuICAgIH1cbiAgICBpZiAob3B0aW9ucyAmJiBvcHRpb25zLnVzZXJEZXRhaWxzICYmIE9iamVjdC5rZXlzKG9wdGlvbnMudXNlckRldGFpbHMpLmxlbmd0aCA+IDApIHtcbiAgICAgIHVzZXJEZXRhaWxzID0geyAuLi5vbGRTdGF0ZS51c2VyRGV0YWlscywgLi4ub3B0aW9ucy51c2VyRGV0YWlscyB9O1xuICAgIH1cblxuICAgIGxldCB0cmFjZUlkID0gb2xkU3RhdGUudHJhY2VJZDtcbiAgICBpZiAoIXRyYWNlSWQpIHtcbiAgICAgIHRyYWNlSWQgPSBnZW5lcmF0ZVRyYWNlSWQoKTtcbiAgICB9XG5cbiAgICBpZiAoIXVzZXJEZXRhaWxzLnV1aWQgJiYgIXVzZXJEZXRhaWxzLmVtYWlsICYmICF1c2VyRGV0YWlscy5tb2JpbGUpIHtcbiAgICAgIGNvbnN0IHV1aWQgPSBnZXRTdG9yZWRVVUlEKCk7XG4gICAgICBpZiAodXVpZCkge1xuICAgICAgICB1c2VyRGV0YWlscy51dWlkID0gdXVpZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoe1xuICAgICAgdHJhY2VJZCxcbiAgICAgIHZhcmlhYmxlcyxcbiAgICAgIGN1c3RvbVByb3BlcnRpZXMsXG4gICAgICB1c2VyRGV0YWlscyxcbiAgICB9KTtcblxuICAgIGNvbnN0IHN0YXRlID0gc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLmdldFN0YXRlKCk7XG4gICAgbGV0IHsgaXNTcG90UGFzc2VkLCBpc0NoZWNrc1Bhc3NlZCB9ID0gc3RhdGU7XG4gICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgIHNjcmVlbk5hbWU6IHNjcmVlbixcbiAgICAgIHZhcmlhYmxlczogc3RhdGUudmFyaWFibGVzLFxuICAgICAgdXNlckRldGFpbHM6IHN0YXRlLnVzZXJEZXRhaWxzLFxuICAgICAgdmlzaXRvcjoge1xuICAgICAgICBkZXZpY2VUeXBlOiAnTU9CSUxFJyxcbiAgICAgICAgb3BlcmF0aW5nU3lzdGVtOiBhd2FpdCBnZXRPUygpLFxuICAgICAgICBzY3JlZW5SZXNvbHV0aW9uOiB7XG4gICAgICAgICAgaGVpZ2h0OiB3aW5kb3cuaW5uZXJIZWlnaHQsXG4gICAgICAgICAgd2lkdGg6IHdpbmRvdy5pbm5lcldpZHRoLFxuICAgICAgICB9LFxuICAgICAgICBjdXJyZW50RGF0ZTogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICB0aW1lem9uZTogSW50bC5EYXRlVGltZUZvcm1hdCgpLnJlc29sdmVkT3B0aW9ucygpLnRpbWVab25lLFxuICAgICAgfSxcbiAgICAgIHRyYWNlSWQ6IHN0YXRlLnRyYWNlSWQsXG4gICAgICBjdXN0b21Qcm9wZXJ0aWVzOiBzdGF0ZS5jdXN0b21Qcm9wZXJ0aWVzLFxuICAgIH07XG5cbiAgICBjb25zdCB1cmwgPSBgaHR0cHM6Ly8ke3N0YXRlLmRvbWFpbk5hbWV9L2FwaS9pbnRlcm5hbC9zcG90Y2hlY2svd2lkZ2V0LyR7c3RhdGUudGFyZ2V0VG9rZW59L3Byb3BlcnRpZXM/aXNTcG90Q2hlY2s9dHJ1ZSZzZGs9SU9TYDtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLnBvc3QodXJsLCBwYXlsb2FkLCB7XG4gICAgICBoZWFkZXJzOiB7XG4gICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYocmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlSnNvbiA9IHJlc3BvbnNlLmRhdGE7XG5cbiAgICAgIGlmIChyZXNwb25zZUpzb24udXVpZCkge1xuICAgICAgICBzZXRVVUlEKHJlc3BvbnNlSnNvbi51dWlkKTtcbiAgICAgIH1cblxuICAgICAgaWYgKHJlc3BvbnNlSnNvbj8uc2hvdykge1xuICAgICAgICBpZiAocmVzcG9uc2VKc29uPy5zaG93KSB7XG4gICAgICAgICAgY29uc3QgYXBwZWFyYW5jZV9yZXNwb25zZSA9IGF3YWl0IHNldEFwcGVhcmFuY2UoXG4gICAgICAgICAgICByZXNwb25zZUpzb24sXG4gICAgICAgICAgICBzY3JlZW4sXG4gICAgICAgICAgICBzdGF0ZS5kb21haW5OYW1lLFxuICAgICAgICAgICAgdHJhY2VJZCxcbiAgICAgICAgICAgIHN0YXRlLnZhcmlhYmxlc1xuICAgICAgICAgICk7XG4gICAgICAgICAgaWYgKGFwcGVhcmFuY2VfcmVzcG9uc2UpIHtcbiAgICAgICAgICAgIGlzU3BvdFBhc3NlZCA9IHRydWU7XG4gICAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBpc1Nwb3RQYXNzZWQgfSk7XG4gICAgICAgICAgICByZXR1cm4geyB2YWxpZDogdHJ1ZSB9O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXG4gICAgICBpZiAoIWlzU3BvdFBhc3NlZCAmJiByZXNwb25zZUpzb24/LmNoZWNrUGFzc2VkKSB7XG4gICAgICAgIGlmIChyZXNwb25zZUpzb24uY2hlY2tDb25kaXRpb24pIHtcbiAgICAgICAgICBjb25zdCBjaGVja0NvbmRpdGlvbiA9IHJlc3BvbnNlSnNvbi5jaGVja0NvbmRpdGlvbjtcbiAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBhZnRlckRlbGF5OiBjaGVja0NvbmRpdGlvbi5hZnRlckRlbGF5IHx8IDAgfSk7XG4gICAgICAgICAgaWYgKGNoZWNrQ29uZGl0aW9uLmN1c3RvbUV2ZW50KSB7XG4gICAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBjdXN0b21FdmVudHNTcG90Q2hlY2tzOiBbcmVzcG9uc2VKc29uXSB9KTtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYXBwZWFyYW5jZV9yZXNwb25zZSA9IGF3YWl0IHNldEFwcGVhcmFuY2UoXG4gICAgICAgICAgcmVzcG9uc2VKc29uLFxuICAgICAgICAgIHNjcmVlbixcbiAgICAgICAgICBzdGF0ZS5kb21haW5OYW1lLFxuICAgICAgICAgIHRyYWNlSWQsXG4gICAgICAgICAgc3RhdGUudmFyaWFibGVzXG4gICAgICAgICk7XG4gICAgICAgIGlmIChhcHBlYXJhbmNlX3Jlc3BvbnNlKSB7XG4gICAgICAgICAgaXNDaGVja3NQYXNzZWQgPSB0cnVlO1xuICAgICAgICAgIHNwb3RjaGVja1N0YXRlU2VydmljZS5zZXRTdGF0ZSh7IGlzQ2hlY2tzUGFzc2VkIH0pO1xuICAgICAgICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaWYgKCFpc1Nwb3RQYXNzZWQgJiYgIWlzQ2hlY2tzUGFzc2VkICYmIHJlc3BvbnNlSnNvbj8ubXVsdGlTaG93ICE9IG51bGwpIHtcbiAgICAgICAgaWYgKHJlc3BvbnNlSnNvbi5tdWx0aVNob3cpIHtcbiAgICAgICAgICBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc2V0U3RhdGUoeyBjdXN0b21FdmVudHNTcG90Q2hlY2tzOiByZXNwb25zZUpzb24ucmVzdWx0YW50U3BvdENoZWNrIH0pO1xuXG4gICAgICAgICAgbGV0IHNlbGVjdGVkU3BvdENoZWNrID0ge307XG4gICAgICAgICAgbGV0IG1pbkRlbGF5OiBudW1iZXIgPSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7XG5cbiAgICAgICAgICBmb3IgKGNvbnN0IHNwb3RjaGVjayBvZiByZXNwb25zZUpzb24ucmVzdWx0YW50U3BvdENoZWNrKSB7XG4gICAgICAgICAgICBjb25zdCBjaGVja3MgPSBzcG90Y2hlY2s/LmNoZWNrcyB8fCB7fTtcbiAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhjaGVja3MpLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICBtaW5EZWxheSA9IDA7XG4gICAgICAgICAgICAgIHNlbGVjdGVkU3BvdENoZWNrID0gc3BvdGNoZWNrO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChjaGVja3MuYWZ0ZXJEZWxheSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGRlbGF5ID0gcGFyc2VGbG9hdChjaGVja3MuYWZ0ZXJEZWxheSk7XG4gICAgICAgICAgICAgIGlmIChtaW5EZWxheSA+IGRlbGF5KSB7XG4gICAgICAgICAgICAgICAgbWluRGVsYXkgPSBkZWxheTtcbiAgICAgICAgICAgICAgICBzZWxlY3RlZFNwb3RDaGVjayA9IHNwb3RjaGVjaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhzZWxlY3RlZFNwb3RDaGVjaykubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLnNldFN0YXRlKHsgYWZ0ZXJEZWxheTogbWluRGVsYXkgfSk7XG4gICAgICAgICAgICBjb25zdCBhcHBlYXJhbmNlX3Jlc3BvbnNlID0gYXdhaXQgc2V0QXBwZWFyYW5jZShcbiAgICAgICAgICAgICAgc2VsZWN0ZWRTcG90Q2hlY2ssXG4gICAgICAgICAgICAgIHNjcmVlbixcbiAgICAgICAgICAgICAgc3RhdGUuZG9tYWluTmFtZSxcbiAgICAgICAgICAgICAgdHJhY2VJZCxcbiAgICAgICAgICAgICAgc3RhdGUudmFyaWFibGVzXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgaWYgKGFwcGVhcmFuY2VfcmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIHsgdmFsaWQ6IHRydWUgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3BvbnNlSnNvbj8ucmVhc29uLnRvU3RyaW5nKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlY2VpdmVkIHN0YXR1cyBjb2RlICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgIHJldHVybiB7IHZhbGlkOiBmYWxzZSwgZXJyb3I6IGVycm9yLm1lc3NhZ2UgfTtcbiAgfVxufTtcblxuXG5leHBvcnQgY29uc3Qgc2VuZFRyYWNrRXZlbnRSZXF1ZXN0ID0gYXN5bmMgKHsgc2NyZWVuLCBldmVudCB9OiBUcmFja0V2ZW50UHJvcHMpID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBpbnRNYXggPSBOdW1iZXIuUE9TSVRJVkVfSU5GSU5JVFk7XG4gICAgY29uc3Qgc3RhdGUgPSBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UoKS5nZXRTdGF0ZSgpO1xuICAgIGxldCBzZWxlY3RlZFNwb3RDaGVja0lEID0gaW50TWF4O1xuICAgIGxldCB7IGlzU3BvdFBhc3NlZCB9ID0gc3RhdGU7XG4gICAgaWYgKHN0YXRlLmN1c3RvbUV2ZW50c1Nwb3RDaGVja3MubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZXZlbnRLZXlzID0gT2JqZWN0LmtleXMoZXZlbnQpO1xuICAgICAgZm9yIChjb25zdCBzcG90Q2hlY2sgb2Ygc3RhdGUuY3VzdG9tRXZlbnRzU3BvdENoZWNrcykge1xuICAgICAgICBjb25zdCBjaGVja3MgPSBzcG90Q2hlY2s/LlsnY2hlY2tzJ10gPz8gc3BvdENoZWNrPy5bJ2NoZWNrQ29uZGl0aW9uJ107XG5cbiAgICAgICAgaWYgKGNoZWNrcykge1xuICAgICAgICAgIGNvbnN0IGN1c3RvbUV2ZW50ID0gY2hlY2tzPy5jdXN0b21FdmVudDtcblxuICAgICAgICAgIGlmIChldmVudEtleXMuaW5jbHVkZXMoY3VzdG9tRXZlbnQ/LmV2ZW50TmFtZSkpIHtcbiAgICAgICAgICAgIHNlbGVjdGVkU3BvdENoZWNrSUQgPVxuICAgICAgICAgICAgICBzcG90Q2hlY2s/LlsnaWQnXSA/PyBzcG90Q2hlY2s/Llsnc3BvdENoZWNrSWQnXSA/PyBpbnRNYXg7XG4gICAgICAgICAgICBsZXQgcGF5bG9hZFVzZXJEZXRhaWxzID0geyAuLi5zdGF0ZS51c2VyRGV0YWlscyB9O1xuXG4gICAgICAgICAgICBpZiAoc2VsZWN0ZWRTcG90Q2hlY2tJRCAhPT0gaW50TWF4KSB7XG4gICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAhcGF5bG9hZFVzZXJEZXRhaWxzPy5lbWFpbCAmJlxuICAgICAgICAgICAgICAgICFwYXlsb2FkVXNlckRldGFpbHM/LnV1aWQgJiZcbiAgICAgICAgICAgICAgICAhcGF5bG9hZFVzZXJEZXRhaWxzPy5tb2JpbGVcbiAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgdXVpZCA9IGdldFN0b3JlZFVVSUQoKTtcbiAgICAgICAgICAgICAgICBpZiAodXVpZCkge1xuICAgICAgICAgICAgICAgICAgcGF5bG9hZFVzZXJEZXRhaWxzLnV1aWQgPSB1dWlkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgICAgICAgICAgICAgc2NyZWVuTmFtZTogc2NyZWVuLFxuICAgICAgICAgICAgICAgIHZhcmlhYmxlczogc3RhdGUudmFyaWFibGVzLFxuICAgICAgICAgICAgICAgIHVzZXJEZXRhaWxzOiBwYXlsb2FkVXNlckRldGFpbHMsXG4gICAgICAgICAgICAgICAgdmlzaXRvcjoge1xuICAgICAgICAgICAgICAgICAgZGV2aWNlVHlwZTogJ01PQklMRScsXG4gICAgICAgICAgICAgICAgICBvcGVyYXRpbmdTeXN0ZW06IGF3YWl0IGdldE9TKCksXG4gICAgICAgICAgICAgICAgICBzY3JlZW5SZXNvbHV0aW9uOiB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogd2luZG93LmlubmVySGVpZ2h0LFxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogd2luZG93LmlubmVyV2lkdGgsXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgY3VycmVudERhdGU6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgICAgICAgICAgIHRpbWV6b25lOiBJbnRsLkRhdGVUaW1lRm9ybWF0KCkucmVzb2x2ZWRPcHRpb25zKCkudGltZVpvbmUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBzcG90Q2hlY2tJZDogc2VsZWN0ZWRTcG90Q2hlY2tJRCxcbiAgICAgICAgICAgICAgICBldmVudFRyaWdnZXI6IHtcbiAgICAgICAgICAgICAgICAgIGN1c3RvbUV2ZW50OiBldmVudCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHRyYWNlSWQ6IHN0YXRlLnRyYWNlSWQsXG4gICAgICAgICAgICAgICAgY3VzdG9tUHJvcGVydGllczogc3RhdGUuY3VzdG9tUHJvcGVydGllcyxcbiAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICBjb25zdCB1cmwgPSBgaHR0cHM6Ly8ke3N0YXRlLmRvbWFpbk5hbWV9L2FwaS9pbnRlcm5hbC9zcG90Y2hlY2svd2lkZ2V0LyR7c3RhdGUudGFyZ2V0VG9rZW59L2V2ZW50VHJpZ2dlcj9pc1Nwb3RDaGVjaz10cnVlYDtcblxuICAgICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MucG9zdCh1cmwsIHBheWxvYWQsIHtcbiAgICAgICAgICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlSnNvbiA9IHJlc3BvbnNlLmRhdGE7XG4gICAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2VKc29uPy5zaG93ICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKHJlc3BvbnNlSnNvbj8uc2hvdykge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGFwcGVhcmFuY2VfcmVzcG9uc2UgPSBhd2FpdCBzZXRBcHBlYXJhbmNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2VKc29uLFxuICAgICAgICAgICAgICAgICAgICAgICAgc2NyZWVuLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGUuZG9tYWluTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLnRyYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS52YXJpYWJsZXNcbiAgICAgICAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgaWYgKGFwcGVhcmFuY2VfcmVzcG9uc2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpLnNldFN0YXRlKHsgaXNTcG90UGFzc2VkOiB0cnVlIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgaXNTcG90UGFzc2VkID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgIGlmICghaXNTcG90UGFzc2VkICYmIHJlc3BvbnNlSnNvbj8uZXZlbnRTaG93KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZUpzb24/LmNoZWNrQ29uZGl0aW9uICE9IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGVja0NvbmRpdGlvbiA9IHJlc3BvbnNlSnNvbj8uY2hlY2tDb25kaXRpb247XG4gICAgICAgICAgICAgICAgICAgICAgZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCkuc2V0U3RhdGUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgYWZ0ZXJEZWxheTogY2hlY2tDb25kaXRpb24/LmFmdGVyRGVsYXkgPz8gMCxcbiAgICAgICAgICAgICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGVja0NvbmRpdGlvbj8uY3VzdG9tRXZlbnQgIT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCkuc2V0U3RhdGUoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICBhZnRlckRlbGF5OiBjaGVja0NvbmRpdGlvbj8uY3VzdG9tRXZlbnQ/LmRlbGF5SW5TZWNvbmRzID8/IDAsXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBhcHBlYXJhbmNlX3Jlc3BvbnNlID0gYXdhaXQgc2V0QXBwZWFyYW5jZShcbiAgICAgICAgICAgICAgICAgICAgICByZXNwb25zZUpzb24sXG4gICAgICAgICAgICAgICAgICAgICAgc2NyZWVuLFxuICAgICAgICAgICAgICAgICAgICAgIHN0YXRlLmRvbWFpbk5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGUudHJhY2VJZCxcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZS52YXJpYWJsZXNcbiAgICAgICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoYXBwZWFyYW5jZV9yZXNwb25zZSkge1xuICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7IHZhbGlkOiB0cnVlIH07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKHJlc3BvbnNlSnNvbj8ucmVhc29uLnRvU3RyaW5nKCkpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFJlY2VpdmVkIHN0YXR1cyBjb2RlICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCcnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCcnKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICByZXR1cm4geyB2YWxpZDogZmFsc2UsIGVycm9yOiBlcnJvci5tZXNzYWdlIH07XG4gIH1cbn07Il19
|
|
@@ -169,7 +169,7 @@ export const setAppearance = async (responseJson, screen, domainName, traceId, v
|
|
|
169
169
|
throw new Error(error.message);
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
|
-
throw new Error('
|
|
172
|
+
throw new Error('Something went wrong');
|
|
173
173
|
}
|
|
174
174
|
catch (error) {
|
|
175
175
|
throw new Error(error.message);
|
|
@@ -324,4 +324,4 @@ export const closeSpotCheckAndHandleSurveyEnd = async () => {
|
|
|
324
324
|
await closeSpotCheck();
|
|
325
325
|
handleSurveyEnd();
|
|
326
326
|
};
|
|
327
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hbmd1bGFyLXVpL2xpYi9zcG90Y2hlY2tzL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxJQUFJLDJCQUFrRCxDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLEdBQTBCLEVBQUU7SUFDbEUsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDakMsMkJBQTJCLEdBQUcsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFDRCxPQUFPLDJCQUEyQixDQUFDO0FBQ3JDLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxlQUFlO0lBQzdCLE1BQU0sVUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQzVCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM3QixPQUFPLEdBQUcsVUFBVSxJQUFJLFNBQVMsRUFBRSxDQUFDO0FBQ3RDLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUMzQyxPQUFPLENBQ0wsSUFBSSxLQUFLLGdCQUFnQjtRQUN6QixJQUFJLEtBQUssU0FBUztRQUNsQixJQUFJLEtBQUssU0FBUztRQUNsQixJQUFJLEtBQUssVUFBVSxDQUNwQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQzlCLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxD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UCxPQUFPLEVBQUUsTUFBTTtvQkFDZixNQUFNLEVBQUUsTUFBTSxHQUFDLElBQUk7aUJBQ3BCLENBQUM7Z0JBQ0YsYUFBYSxHQUFHO29CQUNkLE9BQU8sRUFBRSxNQUFNO29CQUNmLGNBQWMsRUFBRSxRQUFRO2lCQUN6QixDQUFDO2dCQUNKLE1BQU07WUFFUjtnQkFDRSxNQUFNO1FBQ1YsQ0FBQztJQUNILENBQUM7SUFFRCxPQUFPO1FBQ0wsYUFBYSxFQUFFO1lBQ2IsUUFBUSxFQUFFLE9BQU87WUFDakIsS0FBSyxFQUFFLE1BQU07WUFDYixNQUFNLEVBQUUsTUFBTTtZQUNkLEdBQUcsRUFBRSxHQUFHO1lBQ1IsSUFBSSxFQUFFLEdBQUc7WUFDVCxlQUFlLEVBQUUsb0JBQW9CO1lBQ3JDLE1BQU0sRUFBRSxVQUFVO1lBQ2xCLE9BQU8sRUFBRSxNQUFNO1lBQ2YsYUFBYSxFQUFFLFFBQVE7WUFDdkIsVUFBVSxFQUFFLE9BQU8sR0FBQyxJQUFJO1lBQ3hCLGFBQWEsRUFBRSxPQUFPLEdBQUMsSUFBSTtZQUMzQixHQUFHLGFBQWE7U0FDakI7UUFDRCxNQUFNLEVBQUU7WUFDTixPQUFPLEVBQUUsTUFBTTtZQUNmLGFBQWEsRUFBRSxRQUFRO1lBQ3ZCLEdBQUcsTUFBTTtTQUNWO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdDQUFnQyxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQ3pELE1BQU0sY0FBYyxFQUFFLENBQUM7SUFDdkIsZUFBZSxFQUFFLENBQUM7QUFDcEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdjQgYXMgdXVpZHY0IH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBEZXZpY2UgfSBmcm9tICdAY2FwYWNpdG9yL2RldmljZSc7XG5pbXBvcnQgeyBTcG90Y2hlY2tTdGF0ZSB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IGF4aW9zIGZyb20gJ2F4aW9zJztcbmltcG9ydCB7IFNwb3RjaGVja1N0YXRlU2VydmljZSB9IGZyb20gJy4vU3BvdGNoZWNrU3RhdGVTZXJ2aWNlJztcblxubGV0IGdsb2JhbFNwb3RjaGVja1N0YXRlU2VydmljZTogU3BvdGNoZWNrU3RhdGVTZXJ2aWNlO1xuXG5leHBvcnQgY29uc3QgZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlID0gKCk6IFNwb3RjaGVja1N0YXRlU2VydmljZSA9PiB7XG4gIGlmICghZ2xvYmFsU3BvdGNoZWNrU3RhdGVTZXJ2aWNlKSB7XG4gICAgZ2xvYmFsU3BvdGNoZWNrU3RhdGVTZXJ2aWNlID0gbmV3IFNwb3RjaGVja1N0YXRlU2VydmljZSgpO1xuICB9XG4gIHJldHVybiBnbG9iYWxTcG90Y2hlY2tTdGF0ZVNlcnZpY2U7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVUcmFjZUlkKCkge1xuICBjb25zdCB1dWlkU3RyaW5nID0gdXVpZHY0KCk7XG4gIGNvbnN0IHRpbWVzdGFtcCA9IERhdGUubm93KCk7XG4gIHJldHVybiBgJHt1dWlkU3RyaW5nfS0ke3RpbWVzdGFtcH1gO1xufVxuXG5leHBvcnQgY29uc3QgaXNjaGF0U3VydmV5ID0gKHR5cGU6IFN0cmluZykgPT4ge1xuICByZXR1cm4gKFxuICAgIHR5cGUgPT09ICdDb252ZXJzYXRpb25hbCcgfHxcbiAgICB0eXBlID09PSAnQ0VTQ2hhdCcgfHxcbiAgICB0eXBlID09PSAnTlBTQ2hhdCcgfHxcbiAgICB0eXBlID09PSAnQ1NBVENoYXQnXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0T1MgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IGluZm8gPSBhd2FpdCBEZXZpY2UuZ2V0SW5mbygpO1xuICByZXR1cm4gaW5mby5vcGVyYXRpbmdTeXN0ZW07XG59O1xuXG5leHBvcnQgY29uc3Qgc2V0QXBwZWFyYW5jZSA9IGFzeW5jIChcbiAgcmVzcG9uc2VKc29uOiBhbnksXG4gIHNjcmVlbjogc3RyaW5nLFxuICBkb21haW5OYW1lOiBzdHJpbmcsXG4gIHRyYWNlSWQ6IHN0cmluZyxcbiAgdmFyaWFibGVzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+XG4pID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBzcG90Y2hlY2tTdGF0ZVNlcnZpY2UgPSBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UoKTtcbiAgICBsZXQgc3RhdGUgPSBzcG90Y2hlY2tTdGF0ZVNlcnZpY2UuZ2V0U3RhdGUoKTtcblxuICAgIGlmIChyZXNwb25zZUpzb24pIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRTcG90Y2hlY2sgPSBzdGF0ZS5maWx0ZXJlZFNwb3RDaGVja3MuZmluZChcbiAgICAgICAgKHNwb3RjaGVjaykgPT5cbiAgICAgICAgICBzcG90Y2hlY2tbJ2lkJ10gPT09IHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrSWQgfHxcbiAgICAgICAgICBzcG90Y2hlY2tbJ2lkJ10gPT09IHJlc3BvbnNlSnNvbj8uaWRcbiAgICAgICk7XG5cbiAgICAgIGNvbnN0IGFwcGVhcmFuY2UgPSByZXNwb25zZUpzb24/LmFwcGVhcmFuY2U7XG4gICAgICBsZXQgY2hhdCA9IGZhbHNlO1xuXG4gICAgICBsZXQgdXBkYXRlZFN0YXRlOiBQYXJ0aWFsPFNwb3RjaGVja1N0YXRlPiA9IHt9O1xuXG4gICAgICBpZiAoYXBwZWFyYW5jZSkge1xuICAgICAgICBjb25zdCB7XG4gICAgICAgICAgcG9zaXRpb24sXG4gICAgICAgICAgY2xvc2VCdXR0b24sXG4gICAgICAgICAgY29sb3JzLFxuICAgICAgICAgIGNhcmRQcm9wZXJ0aWVzLFxuICAgICAgICAgIG1vZGUsXG4gICAgICAgICAgYmFubmVySW1hZ2UsXG4gICAgICAgIH0gPSBhcHBlYXJhbmNlO1xuICAgICAgICBjb25zdCB7IG1heEhlaWdodCB9ID0gY2FyZFByb3BlcnRpZXMgfHwge307XG5cbiAgICAgICAgdXBkYXRlZFN0YXRlID0ge1xuICAgICAgICAgIHNwb3RjaGVja1Bvc2l0aW9uOlxuICAgICAgICAgICAgcG9zaXRpb24gPT09ICd0b3BfZnVsbCcgfHwgcG9zaXRpb24gPT09ICdjZW50ZXJfdG9wJ1xuICAgICAgICAgICAgICA/ICd0b3AnXG4gICAgICAgICAgICAgIDogcG9zaXRpb24gPT09ICdjZW50ZXJfY2VudGVyJ1xuICAgICAgICAgICAgICA/ICdjZW50ZXInXG4gICAgICAgICAgICAgIDogJ2JvdHRvbScsXG4gICAgICAgICAgaXNDbG9zZUJ1dHRvbkVuYWJsZWQ6IGNsb3NlQnV0dG9uID8/IHRydWUsXG4gICAgICAgICAgY2xvc2VCdXR0b25TdHlsZTogY29sb3JzPy5vdmVycmlkZXMgPz8ge30sXG4gICAgICAgICAgbWF4SGVpZ2h0OiBtYXhIZWlnaHQgPyBwYXJzZUZsb2F0KG1heEhlaWdodCkgLyAxMDAgOiAwLFxuICAgICAgICAgIHNwb3RDaGVja1R5cGU6XG4gICAgICAgICAgICBpc2NoYXRTdXJ2ZXkoY3VycmVudFNwb3RjaGVjaz8uWydzdXJ2ZXknXT8uc3VydmV5VHlwZSkgJiZcbiAgICAgICAgICAgIG1vZGUgPT09ICdmdWxsU2NyZWVuJ1xuICAgICAgICAgICAgICA/ICdjaGF0J1xuICAgICAgICAgICAgICA6ICdjbGFzc2ljJyxcbiAgICAgICAgICBpc0Z1bGxTY3JlZW5Nb2RlOiBtb2RlID09PSAnZnVsbFNjcmVlbicsXG4gICAgICAgICAgaXNCYW5uZXJJbWFnZU9uOiBiYW5uZXJJbWFnZT8uZW5hYmxlZCA/PyBmYWxzZSxcbiAgICAgICAgICBzcG90Q2hlY2tzTW9kZTogbW9kZSxcbiAgICAgICAgICBhdmF0YXJFbmFibGVkOiBhcHBlYXJhbmNlPy5hdmF0YXI/LmVuYWJsZWQgPz8gZmFsc2UsXG4gICAgICAgICAgYXZhdGFyVXJsOiBhcHBlYXJhbmNlPy5hdmF0YXI/LmF2YXRhclVybCA/PyAnJyxcbiAgICAgICAgfTtcblxuICAgICAgICBjaGF0ID0gdXBkYXRlZFN0YXRlLnNwb3RDaGVja1R5cGUgPT09ICdjaGF0JztcbiAgICAgIH1cblxuICAgICAgY29uc3Qgc3BvdENoZWNrSWQgPSByZXNwb25zZUpzb24/LnNwb3RDaGVja0lkID8/IDA7XG4gICAgICBjb25zdCBzcG90Q2hlY2tDb250YWN0SWQgPVxuICAgICAgICByZXNwb25zZUpzb24/LnNwb3RDaGVja0NvbnRhY3RJZCA/P1xuICAgICAgICByZXNwb25zZUpzb24/LnNwb3RDaGVja0NvbnRhY3Q/LmlkID8/XG4gICAgICAgIDA7XG4gICAgICBjb25zdCB0cmlnZ2VyVG9rZW4gPSByZXNwb25zZUpzb24/LnRyaWdnZXJUb2tlbiA/PyAnJztcblxuICAgICAgdXBkYXRlZFN0YXRlID0ge1xuICAgICAgICAuLi51cGRhdGVkU3RhdGUsXG4gICAgICAgIHNwb3RjaGVja0lEOiBzcG90Q2hlY2tJZCxcbiAgICAgICAgc3BvdGNoZWNrQ29udGFjdElEOiBzcG90Q2hlY2tDb250YWN0SWQsXG4gICAgICAgIHRyaWdnZXJUb2tlbixcbiAgICAgIH07XG5cbiAgICAgIGNvbnN0IGJhc2VTcG90Y2hlY2tVUkwgPSBgaHR0cHM6Ly8ke2RvbWFpbk5hbWV9L3Mvc3BvdGNoZWNrLyR7dHJpZ2dlclRva2VufS8ke1xuICAgICAgICBjaGF0ID8gJ2NvbmZpZycgOiAnYm9vdHN0cmFwJ1xuICAgICAgfT9zcG90Y2hlY2tDb250YWN0SWQ9JHtzcG90Q2hlY2tDb250YWN0SWR9JnRyYWNlSWQ9JHt0cmFjZUlkfSZzcG90Y2hlY2tVcmw9JHtzY3JlZW59YDtcblxuICAgICAgbGV0IGZ1bGxTcG90Y2hlY2tVUkwgPSBiYXNlU3BvdGNoZWNrVVJMO1xuXG4gICAgICBPYmplY3QuZW50cmllcyh2YXJpYWJsZXMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBmdWxsU3BvdGNoZWNrVVJMICs9IGAmJHtrZXl9PSR7dmFsdWV9YDtcbiAgICAgIH0pO1xuXG4gICAgICB1cGRhdGVkU3RhdGUuc3BvdGNoZWNrVVJMID0gZnVsbFNwb3RjaGVja1VSTDtcbiAgICAgIHNwb3RjaGVja1N0YXRlU2VydmljZS5zZXRTdGF0ZSh1cGRhdGVkU3RhdGUpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGF4aW9zLmdldChmdWxsU3BvdGNoZWNrVVJMKTtcbiAgICAgICAgY29uc3QgdGhlbWVJbmZvID0gcmVzcG9uc2UuZGF0YS5jb25maWcuZ2VuZXJhdGVkQ1NTO1xuICAgICAgICBjb25zdCB0aGVtZV9wYXlsb2FkID0geyB0eXBlOiAnVEhFTUVfVVBEQVRFX1NQT1RDSEVDSycsIHRoZW1lSW5mbyB9O1xuICAgICAgICBzdGF0ZSA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5nZXRTdGF0ZSgpO1xuXG4gICAgICAgIGxldCB3ZWJWaWV3UmVmID0gY2hhdCA/IHN0YXRlLmNoYXRXZWJWaWV3UmVmIDogc3RhdGUuY2xhc3NpY1dlYlZpZXdSZWY7XG4gICAgICAgIGxldCBpc0xvYWRpbmcgPSBjaGF0ID8gc3RhdGUuaXNDaGF0TG9hZGluZyA6IHN0YXRlLmlzQ2xhc3NpY0xvYWRpbmc7XG5cbiAgICAgICAgY29uc3QgcmVzZXRTdGF0ZURhdGEgPSB7XG4gICAgICAgICAgdHlwZTogJ1JFU0VUX1NUQVRFJyxcbiAgICAgICAgICBzdGF0ZToge1xuICAgICAgICAgICAgLi4uKHJlc3BvbnNlLmRhdGEgfHwge30pLFxuICAgICAgICAgICAgc2tpcDogdHJ1ZSxcbiAgICAgICAgICAgIHNwb3RDaGVja0FwcGVhcmFuY2U6IHtcbiAgICAgICAgICAgICAgLi4uKGFwcGVhcmFuY2UgfHwge30pLFxuICAgICAgICAgICAgICB0YXJnZXRUeXBlOiAnTU9CSUxFJyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBzcG90Y2hlY2tVcmw6IHNjcmVlbixcbiAgICAgICAgICAgIHRyYWNlSWQsXG4gICAgICAgICAgICBlbGVtZW50QnVpbGRlclBhcmFtczoge1xuICAgICAgICAgICAgICAuLi4odmFyaWFibGVzIHx8IHt9KSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBzZW5kTWVzc2FnZVRvSWZyYW1lID0gKGlmcmFtZTogSFRNTElGcmFtZUVsZW1lbnQsIGRhdGE6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChpZnJhbWUgJiYgaWZyYW1lLmNvbnRlbnRXaW5kb3cpIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGlmcmFtZS5jb250ZW50V2luZG93LnBvc3RNZXNzYWdlKGRhdGEsICcqJyk7XG4gICAgICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCfinYwgRmFpbGVkIHRvIHNlbmQgbWVzc2FnZSB0byBpZnJhbWU6JywgZXJyb3IpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBjb21tdW5pY2F0ZVdpdGhXZWJWaWV3ID0gYXN5bmMgKGlmcmFtZTogSFRNTElGcmFtZUVsZW1lbnQpID0+IHtcbiAgICAgICAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgc2VuZE1lc3NhZ2VUb0lmcmFtZShpZnJhbWUsIHJlc2V0U3RhdGVEYXRhKTtcbiAgICAgICAgICAgIHNlbmRNZXNzYWdlVG9JZnJhbWUoaWZyYW1lLCB0aGVtZV9wYXlsb2FkKTtcbiAgICAgICAgICAgIHJlc29sdmUodHJ1ZSk7XG4gICAgICAgICAgfSwgMjAwMCkpO1xuICAgICAgICB9O1xuXG4gICAgICAgIGlmICh3ZWJWaWV3UmVmKSB7XG4gICAgICAgICAgaWYgKGlzTG9hZGluZyA9PT0gZmFsc2UpIHtcbiAgICAgICAgICAgIGNvbW11bmljYXRlV2l0aFdlYlZpZXcod2ViVmlld1JlZik7XG4gICAgICAgICAgICBzdGFydCgpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIHRvZG86IHJlY2hlY2sgdGhpc1xuICAgICAgICAgICAgY29uc3QgdW5zdWJzY3JpYmUgPSBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc3RhdGUkLnN1YnNjcmliZShcbiAgICAgICAgICAgICAgKGN1cnJlbnRTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgICAgICAgIGlzQ2hhdExvYWRpbmcsXG4gICAgICAgICAgICAgICAgICBpc0NsYXNzaWNMb2FkaW5nLFxuICAgICAgICAgICAgICAgICAgY2hhdFdlYlZpZXdSZWYsXG4gICAgICAgICAgICAgICAgICBjbGFzc2ljV2ViVmlld1JlZixcbiAgICAgICAgICAgICAgICB9ID0gY3VycmVudFN0YXRlO1xuXG4gICAgICAgICAgICAgICAgaWYgKCghaXNDaGF0TG9hZGluZyAmJiBjaGF0KSB8fCAoIWlzQ2xhc3NpY0xvYWRpbmcgJiYgIWNoYXQpKSB7XG4gICAgICAgICAgICAgICAgICB1bnN1YnNjcmliZS51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgICAgY29uc3QgYWN0aXZlV2ViVmlld1JlZiA9IGNoYXRcbiAgICAgICAgICAgICAgICAgICAgPyBjaGF0V2ViVmlld1JlZlxuICAgICAgICAgICAgICAgICAgICA6IGNsYXNzaWNXZWJWaWV3UmVmO1xuICAgICAgICAgICAgICAgICAgaWYgKGFjdGl2ZVdlYlZpZXdSZWYpIHtcbiAgICAgICAgICAgICAgICAgICAgY29tbXVuaWNhdGVXaXRoV2ViVmlldyhhY3RpdmVXZWJWaWV3UmVmKTtcbiAgICAgICAgICAgICAgICAgICAgc3RhcnQoKTtcbiAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgICAgICAgICAgICAn4pqg77iPIEFjdGl2ZSBXZWJWaWV3IHJlZiBpcyBudWxsIGFmdGVyIGxvYWRpbmcgY29tcGxldGVkJ1xuICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBjb25zdCB1bnN1YnNjcmliZVdlYlZpZXcgPSBzcG90Y2hlY2tTdGF0ZVNlcnZpY2Uuc3RhdGUkLnN1YnNjcmliZShcbiAgICAgICAgICAgIChjdXJyZW50U3RhdGUpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgdXBkYXRlZFdlYlZpZXdSZWYgPSBjaGF0XG4gICAgICAgICAgICAgICAgPyBjdXJyZW50U3RhdGUuY2hhdFdlYlZpZXdSZWZcbiAgICAgICAgICAgICAgICA6IGN1cnJlbnRTdGF0ZS5jbGFzc2ljV2ViVmlld1JlZjtcbiAgICAgICAgICAgICAgY29uc3QgdXBkYXRlZElzTG9hZGluZyA9IGNoYXRcbiAgICAgICAgICAgICAgICA/IGN1cnJlbnRTdGF0ZS5pc0NoYXRMb2FkaW5nXG4gICAgICAgICAgICAgICAgOiBjdXJyZW50U3RhdGUuaXNDbGFzc2ljTG9hZGluZztcblxuICAgICAgICAgICAgICBpZiAodXBkYXRlZFdlYlZpZXdSZWYpIHtcbiAgICAgICAgICAgICAgICBpZiAoIXVwZGF0ZWRJc0xvYWRpbmcpIHtcbiAgICAgICAgICAgICAgICAgIHVuc3Vic2NyaWJlV2ViVmlldy51bnN1YnNjcmliZSgpO1xuICAgICAgICAgICAgICAgICAgY29tbXVuaWNhdGVXaXRoV2ViVmlldyh1cGRhdGVkV2ViVmlld1JlZik7XG4gICAgICAgICAgICAgICAgICBzdGFydCgpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICBjb25zb2xlLmxvZygn4o+zIFdlYlZpZXcgcmVmIGF2YWlsYWJsZSBidXQgc3RpbGwgbG9hZGluZy4uLicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycm9yOiBhbnkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGVycm9yLm1lc3NhZ2UpO1xuICAgICAgfVxuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoJzIxMicpO1xuICB9IGNhdGNoIChlcnJvcjogYW55KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGVycm9yLm1lc3NhZ2UpO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3Qgc3RhcnQgPSAoKSA9PiB7XG4gIGNvbnN0IHN0YXRlID0gZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCkuZ2V0U3RhdGUoKTtcbiAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCkuc2V0U3RhdGUoeyBpc1Zpc2libGU6IHRydWUgfSk7XG4gIH0sIHN0YXRlLmFmdGVyRGVsYXkgKiAxMDAwKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjbG9zZVNwb3RDaGVjayA9IGFzeW5jICgpID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBzdGF0ZVNlcnZpY2UgPSBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UoKTtcbiAgICBjb25zdCBzdGF0ZSA9IHN0YXRlU2VydmljZS5nZXRTdGF0ZSgpO1xuICAgIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgICB0cmFjZUlkOiBzdGF0ZS50cmFjZUlkLFxuICAgICAgdHJpZ2dlclRva2VuOiBzdGF0ZS50cmlnZ2VyVG9rZW4sXG4gICAgfTtcblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goXG4gICAgICBgaHR0cHM6Ly8ke3N0YXRlLmRvbWFpbk5hbWV9L2FwaS9pbnRlcm5hbC9zcG90Y2hlY2svZGlzbWlzcy8ke3N0YXRlLnNwb3RjaGVja0NvbnRhY3RJRH1gLFxuICAgICAge1xuICAgICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcbiAgICAgICAgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZCksXG4gICAgICB9XG4gICAgKTtcblxuICAgIGlmIChyZXNwb25zZS5zdGF0dXMgIT0gMjAwKSB7XG4gICAgICBjb25zb2xlLmxvZyhgRXJyb3I6ICR7cmVzcG9uc2Uuc3RhdHVzfWApO1xuICAgIH1cbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmxvZygnRXJyb3IgcGFyc2luZyBKU09OOicsIGVycm9yKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZVN1cnZleUVuZCA9ICgpID0+IHtcbiAgY29uc3Qgc3RhdGVTZXJ2aWNlID0gZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gIGNvbnN0IHN0YXRlID0gc3RhdGVTZXJ2aWNlLmdldFN0YXRlKCk7XG4gIGNvbnN0IHdlYlZpZXdSZWYgPVxuICAgIHN0YXRlLnNwb3RDaGVja1R5cGUgPT09ICdjaGF0J1xuICAgICAgPyBzdGF0ZS5jaGF0V2ViVmlld1JlZlxuICAgICAgOiBzdGF0ZS5jbGFzc2ljV2ViVmlld1JlZjtcblxuICB3ZWJWaWV3UmVmPy5jdXJyZW50Py5pbmplY3RKYXZhU2NyaXB0KGBcbiAgICAgIChmdW5jdGlvbigpIHtcbiAgICAgICAgd2luZG93LmRpc3BhdGNoRXZlbnQobmV3IE1lc3NhZ2VFdmVudCgnbWVzc2FnZScsIHtcbiAgICAgICAgICBkYXRhOiAke0pTT04uc3RyaW5naWZ5KHsgdHlwZTogJ1VOTU9VTlRfQVBQJyB9KX1cbiAgICAgICAgfSkpO1xuICAgICAgfSkoKTtcbiAgICBgKTtcblxuICBjb25zdCB1cGRhdGVkU3RhdGU6IFBhcnRpYWw8U3BvdGNoZWNrU3RhdGU+ID0ge1xuICAgIGlzVmlzaWJsZTogZmFsc2UsXG4gICAgaXNDbG9zZUJ1dHRvbkVuYWJsZWQ6IGZhbHNlLFxuICAgIGlzRnVsbFNjcmVlbk1vZGU6IGZhbHNlLFxuICAgIHNwb3RjaGVja0lEOiAwLFxuICAgIGN1cnJlbnRRdWVzdGlvbkhlaWdodDogMCxcbiAgICBjbG9zZUJ1dHRvblN0eWxlOiB7fSxcbiAgICBzcG90Y2hlY2tDb250YWN0SUQ6IDAsXG4gICAgc3BvdGNoZWNrVVJMOiAnJyxcbiAgICBzcG90Y2hlY2tQb3NpdGlvbjogJ2JvdHRvbScsXG4gICAgaXNNb3VudGVkOiBmYWxzZSxcbiAgICBzcG90Q2hlY2tUeXBlOiAnJyxcbiAgICBzY3JlZW5IZWlnaHQ6IDAsXG4gICAga2V5Qm9hcmRIZWlnaHQ6IDAsXG4gICAgdGV4dFBvc2l0aW9uOiAwLFxuICAgIHNwb3RDaGVja3NNb2RlOiAnJyxcbiAgICBhdmF0YXJFbmFibGVkOiBmYWxzZSxcbiAgICBhdmF0YXJVcmw6ICcnLFxuICB9O1xuXG4gIHN0YXRlU2VydmljZS5zZXRTdGF0ZSh1cGRhdGVkU3RhdGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFNwb3RjaGVja0NvbXBvbmVudENzc1N0eWxlcyA9IChzdGF0ZTogU3BvdGNoZWNrU3RhdGUpID0+IHsgXG4gIGxldCBzdHlsZXMgPSB7fVxuICBsZXQgd3JhcHBlclN0eWxlcyA9IHt9XG4gIGxldCBwYWRkaW5nID0gMzA7XG4gIGlmIChzdGF0ZS5pc0Z1bGxTY3JlZW5Nb2RlICYmIHN0YXRlLmlzVmlzaWJsZSkge1xuICAgIHdyYXBwZXJTdHlsZXMgPSB7XG4gICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICB9O1xuICAgIHN0eWxlcyA9IHtcbiAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgIGhlaWdodDogJzEwMCUnLFxuICAgIH07XG4gIH1cbiAgXG4gIGlmIChzdGF0ZS5pc1Zpc2libGUgJiYgc3RhdGUuaXNNb3VudGVkKSB7XG5cbiAgICBsZXQgaGVpZ2h0ID0gTWF0aC5taW4oc3RhdGUuY3VycmVudFF1ZXN0aW9uSGVpZ2h0LCAoc3RhdGUubWF4SGVpZ2h0ICogd2luZG93LmlubmVySGVpZ2h0KSk7XG4gICAgaWYoc3RhdGUuc3BvdENoZWNrc01vZGUgPT09ICdtaW5pQ2FyZCcpIHtcbiAgICAgIHBhZGRpbmcgPSA0NTtcbiAgICAgIGlmKHN0YXRlLmF2YXRhckVuYWJsZWQpIHtcbiAgICAgICAgaGVpZ2h0ID0gaGVpZ2h0IC0gNTY7XG4gICAgICB9XG4gICAgICBpZihzdGF0ZS5pc0Nsb3NlQnV0dG9uRW5hYmxlZCkge1xuICAgICAgICBoZWlnaHQgPSBoZWlnaHQgLSA0MDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzd2l0Y2ggKHN0YXRlLnNwb3RjaGVja1Bvc2l0aW9uKSB7XG4gICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICBzdHlsZXMgPSB7XG4gICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgIGhlaWdodDogaGVpZ2h0KydweCcsXG4gICAgICAgIH07XG4gICAgICAgIHdyYXBwZXJTdHlsZXMgPSB7XG4gICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnZmxleC1lbmQnLFxuICAgICAgICB9O1xuICAgICAgICBicmVhaztcbiAgICAgICAgXG4gICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgICAgc3R5bGVzID0ge1xuICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAgaGVpZ2h0OiBoZWlnaHQrJ3B4JyxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHdyYXBwZXJTdHlsZXMgPSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2ZsZXgtc3RhcnQnLFxuICAgICAgICAgIH07XG4gICAgICAgIGJyZWFrO1xuICAgICAgICAgIFxuICAgICAgICBjYXNlICdjZW50ZXInOlxuICAgICAgICAgIHN0eWxlcyA9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0KydweCcsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdjZW50ZXInLFxuICAgICAgICAgIH07XG4gICAgICAgIGJyZWFrO1xuICAgICAgICBcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuICBcbiAgcmV0dXJuIHtcbiAgICB3cmFwcGVyU3R5bGVzOiB7XG4gICAgICBwb3NpdGlvbjogJ2ZpeGVkJywgXG4gICAgICB3aWR0aDogJzEwMCUnLCBcbiAgICAgIGhlaWdodDogJzEwMCUnLCBcbiAgICAgIHRvcDogJzAnLCBcbiAgICAgIGxlZnQ6ICcwJywgXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6ICdyZ2JhKDAsIDAsIDAsIDAuMyknLCBcbiAgICAgIHpJbmRleDogJzk5OTk5OTk5JyxcbiAgICAgIGRpc3BsYXk6ICdub25lJyxcbiAgICAgIGZsZXhEaXJlY3Rpb246ICdjb2x1bW4nLFxuICAgICAgcGFkZGluZ1RvcDogcGFkZGluZysncHgnLFxuICAgICAgcGFkZGluZ0JvdHRvbTogcGFkZGluZysncHgnLFxuICAgICAgLi4ud3JhcHBlclN0eWxlc1xuICAgIH0sXG4gICAgc3R5bGVzOiB7XG4gICAgICBkaXNwbGF5OiAnbm9uZScsXG4gICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgIC4uLnN0eWxlcyxcbiAgICB9XG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgY2xvc2VTcG90Q2hlY2tBbmRIYW5kbGVTdXJ2ZXlFbmQgPSBhc3luYyAoKSA9PiB7XG4gIGF3YWl0IGNsb3NlU3BvdENoZWNrKCk7XG4gIGhhbmRsZVN1cnZleUVuZCgpO1xufTsiXX0=
|
|
327
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hbmd1bGFyLXVpL2xpYi9zcG90Y2hlY2tzL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsSUFBSSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDcEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNDLE9BQU8sS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMxQixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxJQUFJLDJCQUFrRCxDQUFDO0FBRXZELE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLEdBQTBCLEVBQUU7SUFDbEUsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDakMsMkJBQTJCLEdBQUcsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO0lBQzVELENBQUM7SUFDRCxPQUFPLDJCQUEyQixDQUFDO0FBQ3JDLENBQUMsQ0FBQztBQUVGLE1BQU0sVUFBVSxlQUFlO0lBQzdCLE1BQU0sVUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDO0lBQzVCLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUM3QixPQUFPLEdBQUcsVUFBVSxJQUFJLFNBQVMsRUFBRSxDQUFDO0FBQ3RDLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsQ0FBQyxJQUFZLEVBQUUsRUFBRTtJQUMzQyxPQUFPLENBQ0wsSUFBSSxLQUFLLGdCQUFnQjtRQUN6QixJQUFJLEtBQUssU0FBUztRQUNsQixJQUFJLEtBQUssU0FBUztRQUNsQixJQUFJLEtBQUssVUFBVSxDQUNwQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sS0FBSyxHQUFHLEtBQUssSUFBSSxFQUFFO0lBQzlCLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxD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QUNQLE9BQU8sRUFBRSxNQUFNO29CQUNmLE1BQU0sRUFBRSxNQUFNLEdBQUMsSUFBSTtpQkFDcEIsQ0FBQztnQkFDRixhQUFhLEdBQUc7b0JBQ2QsT0FBTyxFQUFFLE1BQU07b0JBQ2YsY0FBYyxFQUFFLFFBQVE7aUJBQ3pCLENBQUM7Z0JBQ0osTUFBTTtZQUVSO2dCQUNFLE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU87UUFDTCxhQUFhLEVBQUU7WUFDYixRQUFRLEVBQUUsT0FBTztZQUNqQixLQUFLLEVBQUUsTUFBTTtZQUNiLE1BQU0sRUFBRSxNQUFNO1lBQ2QsR0FBRyxFQUFFLEdBQUc7WUFDUixJQUFJLEVBQUUsR0FBRztZQUNULGVBQWUsRUFBRSxvQkFBb0I7WUFDckMsTUFBTSxFQUFFLFVBQVU7WUFDbEIsT0FBTyxFQUFFLE1BQU07WUFDZixhQUFhLEVBQUUsUUFBUTtZQUN2QixVQUFVLEVBQUUsT0FBTyxHQUFDLElBQUk7WUFDeEIsYUFBYSxFQUFFLE9BQU8sR0FBQyxJQUFJO1lBQzNCLEdBQUcsYUFBYTtTQUNqQjtRQUNELE1BQU0sRUFBRTtZQUNOLE9BQU8sRUFBRSxNQUFNO1lBQ2YsYUFBYSxFQUFFLFFBQVE7WUFDdkIsR0FBRyxNQUFNO1NBQ1Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDekQsTUFBTSxjQUFjLEVBQUUsQ0FBQztJQUN2QixlQUFlLEVBQUUsQ0FBQztBQUNwQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB2NCBhcyB1dWlkdjQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IERldmljZSB9IGZyb20gJ0BjYXBhY2l0b3IvZGV2aWNlJztcbmltcG9ydCB7IFNwb3RjaGVja1N0YXRlIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHsgU3BvdGNoZWNrU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9TcG90Y2hlY2tTdGF0ZVNlcnZpY2UnO1xuXG5sZXQgZ2xvYmFsU3BvdGNoZWNrU3RhdGVTZXJ2aWNlOiBTcG90Y2hlY2tTdGF0ZVNlcnZpY2U7XG5cbmV4cG9ydCBjb25zdCBnZXRTcG90Y2hlY2tTdGF0ZVNlcnZpY2UgPSAoKTogU3BvdGNoZWNrU3RhdGVTZXJ2aWNlID0+IHtcbiAgaWYgKCFnbG9iYWxTcG90Y2hlY2tTdGF0ZVNlcnZpY2UpIHtcbiAgICBnbG9iYWxTcG90Y2hlY2tTdGF0ZVNlcnZpY2UgPSBuZXcgU3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gIH1cbiAgcmV0dXJuIGdsb2JhbFNwb3RjaGVja1N0YXRlU2VydmljZTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZW5lcmF0ZVRyYWNlSWQoKSB7XG4gIGNvbnN0IHV1aWRTdHJpbmcgPSB1dWlkdjQoKTtcbiAgY29uc3QgdGltZXN0YW1wID0gRGF0ZS5ub3coKTtcbiAgcmV0dXJuIGAke3V1aWRTdHJpbmd9LSR7dGltZXN0YW1wfWA7XG59XG5cbmV4cG9ydCBjb25zdCBpc2NoYXRTdXJ2ZXkgPSAodHlwZTogU3RyaW5nKSA9PiB7XG4gIHJldHVybiAoXG4gICAgdHlwZSA9PT0gJ0NvbnZlcnNhdGlvbmFsJyB8fFxuICAgIHR5cGUgPT09ICdDRVNDaGF0JyB8fFxuICAgIHR5cGUgPT09ICdOUFNDaGF0JyB8fFxuICAgIHR5cGUgPT09ICdDU0FUQ2hhdCdcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRPUyA9IGFzeW5jICgpID0+IHtcbiAgY29uc3QgaW5mbyA9IGF3YWl0IERldmljZS5nZXRJbmZvKCk7XG4gIHJldHVybiBpbmZvLm9wZXJhdGluZ1N5c3RlbTtcbn07XG5cbmV4cG9ydCBjb25zdCBzZXRBcHBlYXJhbmNlID0gYXN5bmMgKFxuICByZXNwb25zZUpzb246IGFueSxcbiAgc2NyZWVuOiBzdHJpbmcsXG4gIGRvbWFpbk5hbWU6IHN0cmluZyxcbiAgdHJhY2VJZDogc3RyaW5nLFxuICB2YXJpYWJsZXM6IFJlY29yZDxzdHJpbmcsIGFueT5cbikgPT4ge1xuICB0cnkge1xuICAgIGNvbnN0IHNwb3RjaGVja1N0YXRlU2VydmljZSA9IGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpO1xuICAgIGxldCBzdGF0ZSA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5nZXRTdGF0ZSgpO1xuXG4gICAgaWYgKHJlc3BvbnNlSnNvbikge1xuICAgICAgY29uc3QgY3VycmVudFNwb3RjaGVjayA9IHN0YXRlLmZpbHRlcmVkU3BvdENoZWNrcy5maW5kKFxuICAgICAgICAoc3BvdGNoZWNrKSA9PlxuICAgICAgICAgIHNwb3RjaGVja1snaWQnXSA9PT0gcmVzcG9uc2VKc29uPy5zcG90Q2hlY2tJZCB8fFxuICAgICAgICAgIHNwb3RjaGVja1snaWQnXSA9PT0gcmVzcG9uc2VKc29uPy5pZFxuICAgICAgKTtcblxuICAgICAgY29uc3QgYXBwZWFyYW5jZSA9IHJlc3BvbnNlSnNvbj8uYXBwZWFyYW5jZTtcbiAgICAgIGxldCBjaGF0ID0gZmFsc2U7XG5cbiAgICAgIGxldCB1cGRhdGVkU3RhdGU6IFBhcnRpYWw8U3BvdGNoZWNrU3RhdGU+ID0ge307XG5cbiAgICAgIGlmIChhcHBlYXJhbmNlKSB7XG4gICAgICAgIGNvbnN0IHtcbiAgICAgICAgICBwb3NpdGlvbixcbiAgICAgICAgICBjbG9zZUJ1dHRvbixcbiAgICAgICAgICBjb2xvcnMsXG4gICAgICAgICAgY2FyZFByb3BlcnRpZXMsXG4gICAgICAgICAgbW9kZSxcbiAgICAgICAgICBiYW5uZXJJbWFnZSxcbiAgICAgICAgfSA9IGFwcGVhcmFuY2U7XG4gICAgICAgIGNvbnN0IHsgbWF4SGVpZ2h0IH0gPSBjYXJkUHJvcGVydGllcyB8fCB7fTtcblxuICAgICAgICB1cGRhdGVkU3RhdGUgPSB7XG4gICAgICAgICAgc3BvdGNoZWNrUG9zaXRpb246XG4gICAgICAgICAgICBwb3NpdGlvbiA9PT0gJ3RvcF9mdWxsJyB8fCBwb3NpdGlvbiA9PT0gJ2NlbnRlcl90b3AnXG4gICAgICAgICAgICAgID8gJ3RvcCdcbiAgICAgICAgICAgICAgOiBwb3NpdGlvbiA9PT0gJ2NlbnRlcl9jZW50ZXInXG4gICAgICAgICAgICAgID8gJ2NlbnRlcidcbiAgICAgICAgICAgICAgOiAnYm90dG9tJyxcbiAgICAgICAgICBpc0Nsb3NlQnV0dG9uRW5hYmxlZDogY2xvc2VCdXR0b24gPz8gdHJ1ZSxcbiAgICAgICAgICBjbG9zZUJ1dHRvblN0eWxlOiBjb2xvcnM/Lm92ZXJyaWRlcyA/PyB7fSxcbiAgICAgICAgICBtYXhIZWlnaHQ6IG1heEhlaWdodCA/IHBhcnNlRmxvYXQobWF4SGVpZ2h0KSAvIDEwMCA6IDAsXG4gICAgICAgICAgc3BvdENoZWNrVHlwZTpcbiAgICAgICAgICAgIGlzY2hhdFN1cnZleShjdXJyZW50U3BvdGNoZWNrPy5bJ3N1cnZleSddPy5zdXJ2ZXlUeXBlKSAmJlxuICAgICAgICAgICAgbW9kZSA9PT0gJ2Z1bGxTY3JlZW4nXG4gICAgICAgICAgICAgID8gJ2NoYXQnXG4gICAgICAgICAgICAgIDogJ2NsYXNzaWMnLFxuICAgICAgICAgIGlzRnVsbFNjcmVlbk1vZGU6IG1vZGUgPT09ICdmdWxsU2NyZWVuJyxcbiAgICAgICAgICBpc0Jhbm5lckltYWdlT246IGJhbm5lckltYWdlPy5lbmFibGVkID8/IGZhbHNlLFxuICAgICAgICAgIHNwb3RDaGVja3NNb2RlOiBtb2RlLFxuICAgICAgICAgIGF2YXRhckVuYWJsZWQ6IGFwcGVhcmFuY2U/LmF2YXRhcj8uZW5hYmxlZCA/PyBmYWxzZSxcbiAgICAgICAgICBhdmF0YXJVcmw6IGFwcGVhcmFuY2U/LmF2YXRhcj8uYXZhdGFyVXJsID8/ICcnLFxuICAgICAgICB9O1xuXG4gICAgICAgIGNoYXQgPSB1cGRhdGVkU3RhdGUuc3BvdENoZWNrVHlwZSA9PT0gJ2NoYXQnO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBzcG90Q2hlY2tJZCA9IHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrSWQgPz8gMDtcbiAgICAgIGNvbnN0IHNwb3RDaGVja0NvbnRhY3RJZCA9XG4gICAgICAgIHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrQ29udGFjdElkID8/XG4gICAgICAgIHJlc3BvbnNlSnNvbj8uc3BvdENoZWNrQ29udGFjdD8uaWQgPz9cbiAgICAgICAgMDtcbiAgICAgIGNvbnN0IHRyaWdnZXJUb2tlbiA9IHJlc3BvbnNlSnNvbj8udHJpZ2dlclRva2VuID8/ICcnO1xuXG4gICAgICB1cGRhdGVkU3RhdGUgPSB7XG4gICAgICAgIC4uLnVwZGF0ZWRTdGF0ZSxcbiAgICAgICAgc3BvdGNoZWNrSUQ6IHNwb3RDaGVja0lkLFxuICAgICAgICBzcG90Y2hlY2tDb250YWN0SUQ6IHNwb3RDaGVja0NvbnRhY3RJZCxcbiAgICAgICAgdHJpZ2dlclRva2VuLFxuICAgICAgfTtcblxuICAgICAgY29uc3QgYmFzZVNwb3RjaGVja1VSTCA9IGBodHRwczovLyR7ZG9tYWluTmFtZX0vcy9zcG90Y2hlY2svJHt0cmlnZ2VyVG9rZW59LyR7XG4gICAgICAgIGNoYXQgPyAnY29uZmlnJyA6ICdib290c3RyYXAnXG4gICAgICB9P3Nwb3RjaGVja0NvbnRhY3RJZD0ke3Nwb3RDaGVja0NvbnRhY3RJZH0mdHJhY2VJZD0ke3RyYWNlSWR9JnNwb3RjaGVja1VybD0ke3NjcmVlbn1gO1xuXG4gICAgICBsZXQgZnVsbFNwb3RjaGVja1VSTCA9IGJhc2VTcG90Y2hlY2tVUkw7XG5cbiAgICAgIE9iamVjdC5lbnRyaWVzKHZhcmlhYmxlcykuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGZ1bGxTcG90Y2hlY2tVUkwgKz0gYCYke2tleX09JHt2YWx1ZX1gO1xuICAgICAgfSk7XG5cbiAgICAgIHVwZGF0ZWRTdGF0ZS5zcG90Y2hlY2tVUkwgPSBmdWxsU3BvdGNoZWNrVVJMO1xuICAgICAgc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLnNldFN0YXRlKHVwZGF0ZWRTdGF0ZSk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXhpb3MuZ2V0KGZ1bGxTcG90Y2hlY2tVUkwpO1xuICAgICAgICBjb25zdCB0aGVtZUluZm8gPSByZXNwb25zZS5kYXRhLmNvbmZpZy5nZW5lcmF0ZWRDU1M7XG4gICAgICAgIGNvbnN0IHRoZW1lX3BheWxvYWQgPSB7IHR5cGU6ICdUSEVNRV9VUERBVEVfU1BPVENIRUNLJywgdGhlbWVJbmZvIH07XG4gICAgICAgIHN0YXRlID0gc3BvdGNoZWNrU3RhdGVTZXJ2aWNlLmdldFN0YXRlKCk7XG5cbiAgICAgICAgbGV0IHdlYlZpZXdSZWYgPSBjaGF0ID8gc3RhdGUuY2hhdFdlYlZpZXdSZWYgOiBzdGF0ZS5jbGFzc2ljV2ViVmlld1JlZjtcbiAgICAgICAgbGV0IGlzTG9hZGluZyA9IGNoYXQgPyBzdGF0ZS5pc0NoYXRMb2FkaW5nIDogc3RhdGUuaXNDbGFzc2ljTG9hZGluZztcblxuICAgICAgICBjb25zdCByZXNldFN0YXRlRGF0YSA9IHtcbiAgICAgICAgICB0eXBlOiAnUkVTRVRfU1RBVEUnLFxuICAgICAgICAgIHN0YXRlOiB7XG4gICAgICAgICAgICAuLi4ocmVzcG9uc2UuZGF0YSB8fCB7fSksXG4gICAgICAgICAgICBza2lwOiB0cnVlLFxuICAgICAgICAgICAgc3BvdENoZWNrQXBwZWFyYW5jZToge1xuICAgICAgICAgICAgICAuLi4oYXBwZWFyYW5jZSB8fCB7fSksXG4gICAgICAgICAgICAgIHRhcmdldFR5cGU6ICdNT0JJTEUnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHNwb3RjaGVja1VybDogc2NyZWVuLFxuICAgICAgICAgICAgdHJhY2VJZCxcbiAgICAgICAgICAgIGVsZW1lbnRCdWlsZGVyUGFyYW1zOiB7XG4gICAgICAgICAgICAgIC4uLih2YXJpYWJsZXMgfHwge30pLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IHNlbmRNZXNzYWdlVG9JZnJhbWUgPSAoaWZyYW1lOiBIVE1MSUZyYW1lRWxlbWVudCwgZGF0YTogYW55KSA9PiB7XG4gICAgICAgICAgaWYgKGlmcmFtZSAmJiBpZnJhbWUuY29udGVudFdpbmRvdykge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgaWZyYW1lLmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UoZGF0YSwgJyonKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoJ+KdjCBGYWlsZWQgdG8gc2VuZCBtZXNzYWdlIHRvIGlmcmFtZTonLCBlcnJvcik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIGNvbnN0IGNvbW11bmljYXRlV2l0aFdlYlZpZXcgPSBhc3luYyAoaWZyYW1lOiBIVE1MSUZyYW1lRWxlbWVudCkgPT4ge1xuICAgICAgICAgIGF3YWl0IG5ldyBQcm9taXNlKHJlc29sdmUgPT4gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBzZW5kTWVzc2FnZVRvSWZyYW1lKGlmcmFtZSwgcmVzZXRTdGF0ZURhdGEpO1xuICAgICAgICAgICAgc2VuZE1lc3NhZ2VUb0lmcmFtZShpZnJhbWUsIHRoZW1lX3BheWxvYWQpO1xuICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICAgICAgICB9LCAyMDAwKSk7XG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKHdlYlZpZXdSZWYpIHtcbiAgICAgICAgICBpZiAoaXNMb2FkaW5nID09PSBmYWxzZSkge1xuICAgICAgICAgICAgY29tbXVuaWNhdGVXaXRoV2ViVmlldyh3ZWJWaWV3UmVmKTtcbiAgICAgICAgICAgIHN0YXJ0KCk7XG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gdG9kbzogcmVjaGVjayB0aGlzXG4gICAgICAgICAgICBjb25zdCB1bnN1YnNjcmliZSA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5zdGF0ZSQuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAoY3VycmVudFN0YXRlKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgICAgICAgaXNDaGF0TG9hZGluZyxcbiAgICAgICAgICAgICAgICAgIGlzQ2xhc3NpY0xvYWRpbmcsXG4gICAgICAgICAgICAgICAgICBjaGF0V2ViVmlld1JlZixcbiAgICAgICAgICAgICAgICAgIGNsYXNzaWNXZWJWaWV3UmVmLFxuICAgICAgICAgICAgICAgIH0gPSBjdXJyZW50U3RhdGU7XG5cbiAgICAgICAgICAgICAgICBpZiAoKCFpc0NoYXRMb2FkaW5nICYmIGNoYXQpIHx8ICghaXNDbGFzc2ljTG9hZGluZyAmJiAhY2hhdCkpIHtcbiAgICAgICAgICAgICAgICAgIHVuc3Vic2NyaWJlLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICBjb25zdCBhY3RpdmVXZWJWaWV3UmVmID0gY2hhdFxuICAgICAgICAgICAgICAgICAgICA/IGNoYXRXZWJWaWV3UmVmXG4gICAgICAgICAgICAgICAgICAgIDogY2xhc3NpY1dlYlZpZXdSZWY7XG4gICAgICAgICAgICAgICAgICBpZiAoYWN0aXZlV2ViVmlld1JlZikge1xuICAgICAgICAgICAgICAgICAgICBjb21tdW5pY2F0ZVdpdGhXZWJWaWV3KGFjdGl2ZVdlYlZpZXdSZWYpO1xuICAgICAgICAgICAgICAgICAgICBzdGFydCgpO1xuICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgICAgICAgICfimqDvuI8gQWN0aXZlIFdlYlZpZXcgcmVmIGlzIG51bGwgYWZ0ZXIgbG9hZGluZyBjb21wbGV0ZWQnXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHVuc3Vic2NyaWJlV2ViVmlldyA9IHNwb3RjaGVja1N0YXRlU2VydmljZS5zdGF0ZSQuc3Vic2NyaWJlKFxuICAgICAgICAgICAgKGN1cnJlbnRTdGF0ZSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkV2ViVmlld1JlZiA9IGNoYXRcbiAgICAgICAgICAgICAgICA/IGN1cnJlbnRTdGF0ZS5jaGF0V2ViVmlld1JlZlxuICAgICAgICAgICAgICAgIDogY3VycmVudFN0YXRlLmNsYXNzaWNXZWJWaWV3UmVmO1xuICAgICAgICAgICAgICBjb25zdCB1cGRhdGVkSXNMb2FkaW5nID0gY2hhdFxuICAgICAgICAgICAgICAgID8gY3VycmVudFN0YXRlLmlzQ2hhdExvYWRpbmdcbiAgICAgICAgICAgICAgICA6IGN1cnJlbnRTdGF0ZS5pc0NsYXNzaWNMb2FkaW5nO1xuXG4gICAgICAgICAgICAgIGlmICh1cGRhdGVkV2ViVmlld1JlZikge1xuICAgICAgICAgICAgICAgIGlmICghdXBkYXRlZElzTG9hZGluZykge1xuICAgICAgICAgICAgICAgICAgdW5zdWJzY3JpYmVXZWJWaWV3LnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICAgICAgICBjb21tdW5pY2F0ZVdpdGhXZWJWaWV3KHVwZGF0ZWRXZWJWaWV3UmVmKTtcbiAgICAgICAgICAgICAgICAgIHN0YXJ0KCk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnNvbGUubG9nKCfij7MgV2ViVmlldyByZWYgYXZhaWxhYmxlIGJ1dCBzdGlsbCBsb2FkaW5nLi4uJyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyb3IubWVzc2FnZSk7XG4gICAgICB9XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcignU29tZXRoaW5nIHdlbnQgd3JvbmcnKTtcbiAgfSBjYXRjaCAoZXJyb3I6IGFueSkge1xuICAgIHRocm93IG5ldyBFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHN0YXJ0ID0gKCkgPT4ge1xuICBjb25zdCBzdGF0ZSA9IGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpLmdldFN0YXRlKCk7XG4gIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpLnNldFN0YXRlKHsgaXNWaXNpYmxlOiB0cnVlIH0pO1xuICB9LCBzdGF0ZS5hZnRlckRlbGF5ICogMTAwMCk7XG59O1xuXG5leHBvcnQgY29uc3QgY2xvc2VTcG90Q2hlY2sgPSBhc3luYyAoKSA9PiB7XG4gIHRyeSB7XG4gICAgY29uc3Qgc3RhdGVTZXJ2aWNlID0gZ2V0U3BvdGNoZWNrU3RhdGVTZXJ2aWNlKCk7XG4gICAgY29uc3Qgc3RhdGUgPSBzdGF0ZVNlcnZpY2UuZ2V0U3RhdGUoKTtcbiAgICBjb25zdCBwYXlsb2FkID0ge1xuICAgICAgdHJhY2VJZDogc3RhdGUudHJhY2VJZCxcbiAgICAgIHRyaWdnZXJUb2tlbjogc3RhdGUudHJpZ2dlclRva2VuLFxuICAgIH07XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKFxuICAgICAgYGh0dHBzOi8vJHtzdGF0ZS5kb21haW5OYW1lfS9hcGkvaW50ZXJuYWwvc3BvdGNoZWNrL2Rpc21pc3MvJHtzdGF0ZS5zcG90Y2hlY2tDb250YWN0SUR9YCxcbiAgICAgIHtcbiAgICAgICAgbWV0aG9kOiAnUFVUJyxcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpLFxuICAgICAgfVxuICAgICk7XG5cbiAgICBpZiAocmVzcG9uc2Uuc3RhdHVzICE9IDIwMCkge1xuICAgICAgY29uc29sZS5sb2coYEVycm9yOiAke3Jlc3BvbnNlLnN0YXR1c31gKTtcbiAgICB9XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgY29uc29sZS5sb2coJ0Vycm9yIHBhcnNpbmcgSlNPTjonLCBlcnJvcik7XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVTdXJ2ZXlFbmQgPSAoKSA9PiB7XG4gIGNvbnN0IHN0YXRlU2VydmljZSA9IGdldFNwb3RjaGVja1N0YXRlU2VydmljZSgpO1xuICBjb25zdCBzdGF0ZSA9IHN0YXRlU2VydmljZS5nZXRTdGF0ZSgpO1xuICBjb25zdCB3ZWJWaWV3UmVmID1cbiAgICBzdGF0ZS5zcG90Q2hlY2tUeXBlID09PSAnY2hhdCdcbiAgICAgID8gc3RhdGUuY2hhdFdlYlZpZXdSZWZcbiAgICAgIDogc3RhdGUuY2xhc3NpY1dlYlZpZXdSZWY7XG5cbiAgd2ViVmlld1JlZj8uY3VycmVudD8uaW5qZWN0SmF2YVNjcmlwdChgXG4gICAgICAoZnVuY3Rpb24oKSB7XG4gICAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KG5ldyBNZXNzYWdlRXZlbnQoJ21lc3NhZ2UnLCB7XG4gICAgICAgICAgZGF0YTogJHtKU09OLnN0cmluZ2lmeSh7IHR5cGU6ICdVTk1PVU5UX0FQUCcgfSl9XG4gICAgICAgIH0pKTtcbiAgICAgIH0pKCk7XG4gICAgYCk7XG5cbiAgY29uc3QgdXBkYXRlZFN0YXRlOiBQYXJ0aWFsPFNwb3RjaGVja1N0YXRlPiA9IHtcbiAgICBpc1Zpc2libGU6IGZhbHNlLFxuICAgIGlzQ2xvc2VCdXR0b25FbmFibGVkOiBmYWxzZSxcbiAgICBpc0Z1bGxTY3JlZW5Nb2RlOiBmYWxzZSxcbiAgICBzcG90Y2hlY2tJRDogMCxcbiAgICBjdXJyZW50UXVlc3Rpb25IZWlnaHQ6IDAsXG4gICAgY2xvc2VCdXR0b25TdHlsZToge30sXG4gICAgc3BvdGNoZWNrQ29udGFjdElEOiAwLFxuICAgIHNwb3RjaGVja1VSTDogJycsXG4gICAgc3BvdGNoZWNrUG9zaXRpb246ICdib3R0b20nLFxuICAgIGlzTW91bnRlZDogZmFsc2UsXG4gICAgc3BvdENoZWNrVHlwZTogJycsXG4gICAgc2NyZWVuSGVpZ2h0OiAwLFxuICAgIGtleUJvYXJkSGVpZ2h0OiAwLFxuICAgIHRleHRQb3NpdGlvbjogMCxcbiAgICBzcG90Q2hlY2tzTW9kZTogJycsXG4gICAgYXZhdGFyRW5hYmxlZDogZmFsc2UsXG4gICAgYXZhdGFyVXJsOiAnJyxcbiAgfTtcblxuICBzdGF0ZVNlcnZpY2Uuc2V0U3RhdGUodXBkYXRlZFN0YXRlKTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRTcG90Y2hlY2tDb21wb25lbnRDc3NTdHlsZXMgPSAoc3RhdGU6IFNwb3RjaGVja1N0YXRlKSA9PiB7IFxuICBsZXQgc3R5bGVzID0ge31cbiAgbGV0IHdyYXBwZXJTdHlsZXMgPSB7fVxuICBsZXQgcGFkZGluZyA9IDMwO1xuICBpZiAoc3RhdGUuaXNGdWxsU2NyZWVuTW9kZSAmJiBzdGF0ZS5pc1Zpc2libGUpIHtcbiAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgaGVpZ2h0OiAnMTAwJScsXG4gICAgfTtcbiAgICBzdHlsZXMgPSB7XG4gICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICBoZWlnaHQ6ICcxMDAlJyxcbiAgICB9O1xuICB9XG4gIFxuICBpZiAoc3RhdGUuaXNWaXNpYmxlICYmIHN0YXRlLmlzTW91bnRlZCkge1xuXG4gICAgbGV0IGhlaWdodCA9IE1hdGgubWluKHN0YXRlLmN1cnJlbnRRdWVzdGlvbkhlaWdodCwgKHN0YXRlLm1heEhlaWdodCAqIHdpbmRvdy5pbm5lckhlaWdodCkpO1xuICAgIGlmKHN0YXRlLnNwb3RDaGVja3NNb2RlID09PSAnbWluaUNhcmQnKSB7XG4gICAgICBwYWRkaW5nID0gNDU7XG4gICAgICBpZihzdGF0ZS5hdmF0YXJFbmFibGVkKSB7XG4gICAgICAgIGhlaWdodCA9IGhlaWdodCAtIDU2O1xuICAgICAgfVxuICAgICAgaWYoc3RhdGUuaXNDbG9zZUJ1dHRvbkVuYWJsZWQpIHtcbiAgICAgICAgaGVpZ2h0ID0gaGVpZ2h0IC0gNDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc3dpdGNoIChzdGF0ZS5zcG90Y2hlY2tQb3NpdGlvbikge1xuICAgICAgY2FzZSAnYm90dG9tJzpcbiAgICAgICAgc3R5bGVzID0ge1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBoZWlnaHQ6IGhlaWdodCsncHgnLFxuICAgICAgICB9O1xuICAgICAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICBqdXN0aWZ5Q29udGVudDogJ2ZsZXgtZW5kJyxcbiAgICAgICAgfTtcbiAgICAgICAgYnJlYWs7XG4gICAgICAgIFxuICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICAgIHN0eWxlcyA9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICAgIGhlaWdodDogaGVpZ2h0KydweCcsXG4gICAgICAgICAgfTtcbiAgICAgICAgICB3cmFwcGVyU3R5bGVzID0ge1xuICAgICAgICAgICAgZGlzcGxheTogJ2ZsZXgnLFxuICAgICAgICAgICAganVzdGlmeUNvbnRlbnQ6ICdmbGV4LXN0YXJ0JyxcbiAgICAgICAgICB9O1xuICAgICAgICBicmVhaztcbiAgICAgICAgICBcbiAgICAgICAgY2FzZSAnY2VudGVyJzpcbiAgICAgICAgICBzdHlsZXMgPSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAnZmxleCcsXG4gICAgICAgICAgICBoZWlnaHQ6IGhlaWdodCsncHgnLFxuICAgICAgICAgIH07XG4gICAgICAgICAgd3JhcHBlclN0eWxlcyA9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiAnY2VudGVyJyxcbiAgICAgICAgICB9O1xuICAgICAgICBicmVhaztcbiAgICAgICAgXG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbiAgXG4gIHJldHVybiB7XG4gICAgd3JhcHBlclN0eWxlczoge1xuICAgICAgcG9zaXRpb246ICdmaXhlZCcsIFxuICAgICAgd2lkdGg6ICcxMDAlJywgXG4gICAgICBoZWlnaHQ6ICcxMDAlJywgXG4gICAgICB0b3A6ICcwJywgXG4gICAgICBsZWZ0OiAnMCcsIFxuICAgICAgYmFja2dyb3VuZENvbG9yOiAncmdiYSgwLCAwLCAwLCAwLjMpJywgXG4gICAgICB6SW5kZXg6ICc5OTk5OTk5OScsXG4gICAgICBkaXNwbGF5OiAnbm9uZScsXG4gICAgICBmbGV4RGlyZWN0aW9uOiAnY29sdW1uJyxcbiAgICAgIHBhZGRpbmdUb3A6IHBhZGRpbmcrJ3B4JyxcbiAgICAgIHBhZGRpbmdCb3R0b206IHBhZGRpbmcrJ3B4JyxcbiAgICAgIC4uLndyYXBwZXJTdHlsZXNcbiAgICB9LFxuICAgIHN0eWxlczoge1xuICAgICAgZGlzcGxheTogJ25vbmUnLFxuICAgICAgZmxleERpcmVjdGlvbjogJ2NvbHVtbicsXG4gICAgICAuLi5zdHlsZXMsXG4gICAgfVxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGNsb3NlU3BvdENoZWNrQW5kSGFuZGxlU3VydmV5RW5kID0gYXN5bmMgKCkgPT4ge1xuICBhd2FpdCBjbG9zZVNwb3RDaGVjaygpO1xuICBoYW5kbGVTdXJ2ZXlFbmQoKTtcbn07Il19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYW5ndWxhci11aS9saWIvc3BvdGNoZWNrcy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTcG90Y2hlY2tTdGF0ZSB7XG4gIGlzVmlzaWJsZTogYm9vbGVhbjtcbiAgc3BvdGNoZWNrUG9zaXRpb246IHN0cmluZztcbiAgc3BvdGNoZWNrVVJMOiBzdHJpbmc7XG4gIHNwb3RjaGVja0lEOiBudW1iZXI7XG4gIHNwb3RjaGVja0NvbnRhY3RJRDogbnVtYmVyO1xuICBhZnRlckRlbGF5OiBudW1iZXI7XG4gIG1heEhlaWdodDogbnVtYmVyO1xuICBjdXJyZW50UXVlc3Rpb25IZWlnaHQ6IG51bWJlcjtcbiAgaXNGdWxsU2NyZWVuTW9kZTogYm9vbGVhbjtcbiAgaXNCYW5uZXJJbWFnZU9uOiBib29sZWFuO1xuICB0cmlnZ2VyVG9rZW46IHN0cmluZztcbiAgY2xvc2VCdXR0b25TdHlsZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgaXNDbG9zZUJ1dHRvbkVuYWJsZWQ6IGJvb2xlYW47XG4gIGlzU3BvdFBhc3NlZDogYm9vbGVhbjtcbiAgaXNDaGVja3NQYXNzZWQ6IGJvb2xlYW47XG4gIGN1c3RvbUV2ZW50c1Nwb3RDaGVja3M6IFJlY29yZDxzdHJpbmcsIGFueT5bXTtcbiAgdGFyZ2V0VG9rZW46IHN0cmluZztcbiAgZG9tYWluTmFtZTogc3RyaW5nO1xuICB1c2VyRGV0YWlsczogVXNlckRldGFpbHM7XG4gIHZhcmlhYmxlczogVmFyaWFibGVzO1xuICBjdXN0b21Qcm9wZXJ0aWVzOiBDdXN0b21Qcm9wZXJ0aWVzO1xuICB0cmFjZUlkOiBzdHJpbmc7XG4gIGlzQ2xhc3NpY0xvYWRpbmc6IGJvb2xlYW47XG4gIGlzQ2hhdExvYWRpbmc6IGJvb2xlYW47XG4gIGNsYXNzaWNVcmw6IHN0cmluZztcbiAgY2hhdFVybDogc3RyaW5nO1xuICBjbGFzc2ljV2ViVmlld1JlZjogYW55IHwgbnVsbDtcbiAgY2hhdFdlYlZpZXdSZWY6IGFueSB8IG51bGw7XG4gIGZpbHRlcmVkU3BvdENoZWNrczogUmVjb3JkPHN0cmluZywgYW55PltdO1xuICBzcG90Q2hlY2tUeXBlOiBTdHJpbmc7XG4gIGlzTW91bnRlZDogYm9vbGVhbjtcbiAgdGV4dFBvc2l0aW9uOiBudW1iZXI7XG4gIHNjcmVlbkhlaWdodDogbnVtYmVyO1xuICBrZXlCb2FyZEhlaWdodDogbnVtYmVyO1xuICBzcG90Q2hlY2tzTW9kZTogc3RyaW5nO1xuICBhdmF0YXJFbmFibGVkOiBib29sZWFuO1xuICBhdmF0YXJVcmw6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlscyB7XG4gIHV1aWQ/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBmaXJzdE5hbWU/OiBzdHJpbmc7XG4gIGxhc3ROYW1lPzogc3RyaW5nO1xuICBtb2JpbGU/
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYW5ndWxhci11aS9saWIvc3BvdGNoZWNrcy90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBTcG90Y2hlY2tTdGF0ZSB7XG4gIGlzVmlzaWJsZTogYm9vbGVhbjtcbiAgc3BvdGNoZWNrUG9zaXRpb246IHN0cmluZztcbiAgc3BvdGNoZWNrVVJMOiBzdHJpbmc7XG4gIHNwb3RjaGVja0lEOiBudW1iZXI7XG4gIHNwb3RjaGVja0NvbnRhY3RJRDogbnVtYmVyO1xuICBhZnRlckRlbGF5OiBudW1iZXI7XG4gIG1heEhlaWdodDogbnVtYmVyO1xuICBjdXJyZW50UXVlc3Rpb25IZWlnaHQ6IG51bWJlcjtcbiAgaXNGdWxsU2NyZWVuTW9kZTogYm9vbGVhbjtcbiAgaXNCYW5uZXJJbWFnZU9uOiBib29sZWFuO1xuICB0cmlnZ2VyVG9rZW46IHN0cmluZztcbiAgY2xvc2VCdXR0b25TdHlsZTogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgaXNDbG9zZUJ1dHRvbkVuYWJsZWQ6IGJvb2xlYW47XG4gIGlzU3BvdFBhc3NlZDogYm9vbGVhbjtcbiAgaXNDaGVja3NQYXNzZWQ6IGJvb2xlYW47XG4gIGN1c3RvbUV2ZW50c1Nwb3RDaGVja3M6IFJlY29yZDxzdHJpbmcsIGFueT5bXTtcbiAgdGFyZ2V0VG9rZW46IHN0cmluZztcbiAgZG9tYWluTmFtZTogc3RyaW5nO1xuICB1c2VyRGV0YWlsczogVXNlckRldGFpbHM7XG4gIHZhcmlhYmxlczogVmFyaWFibGVzO1xuICBjdXN0b21Qcm9wZXJ0aWVzOiBDdXN0b21Qcm9wZXJ0aWVzO1xuICB0cmFjZUlkOiBzdHJpbmc7XG4gIGlzQ2xhc3NpY0xvYWRpbmc6IGJvb2xlYW47XG4gIGlzQ2hhdExvYWRpbmc6IGJvb2xlYW47XG4gIGNsYXNzaWNVcmw6IHN0cmluZztcbiAgY2hhdFVybDogc3RyaW5nO1xuICBjbGFzc2ljV2ViVmlld1JlZjogYW55IHwgbnVsbDtcbiAgY2hhdFdlYlZpZXdSZWY6IGFueSB8IG51bGw7XG4gIGZpbHRlcmVkU3BvdENoZWNrczogUmVjb3JkPHN0cmluZywgYW55PltdO1xuICBzcG90Q2hlY2tUeXBlOiBTdHJpbmc7XG4gIGlzTW91bnRlZDogYm9vbGVhbjtcbiAgdGV4dFBvc2l0aW9uOiBudW1iZXI7XG4gIHNjcmVlbkhlaWdodDogbnVtYmVyO1xuICBrZXlCb2FyZEhlaWdodDogbnVtYmVyO1xuICBzcG90Q2hlY2tzTW9kZTogc3RyaW5nO1xuICBhdmF0YXJFbmFibGVkOiBib29sZWFuO1xuICBhdmF0YXJVcmw6IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVc2VyRGV0YWlscyB7XG4gIHV1aWQ/OiBzdHJpbmc7XG4gIGVtYWlsPzogc3RyaW5nO1xuICBmaXJzdE5hbWU/OiBzdHJpbmc7XG4gIGxhc3ROYW1lPzogc3RyaW5nO1xuICBtb2JpbGU/OiBudW1iZXI7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWYXJpYWJsZXMge1xuICBzcGFycm93TGFuZz86IHN0cmluZztcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVByb3BlcnRpZXMge1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhY2tTY3JlZW5Qcm9wcyB7XG4gIHNjcmVlbjogc3RyaW5nO1xuICBvcHRpb25zPzoge1xuICAgIHZhcmlhYmxlcz86IFZhcmlhYmxlcztcbiAgICBjdXN0b21Qcm9wZXJ0aWVzPzogQ3VzdG9tUHJvcGVydGllcztcbiAgICB1c2VyRGV0YWlscz86IFVzZXJEZXRhaWxzO1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYWNrRXZlbnRQcm9wcyB7XG4gIHNjcmVlbjogc3RyaW5nO1xuICBldmVudDoge1xuICAgIFtrZXk6IHN0cmluZ106IHtcbiAgICAgIFtrZXk6IHN0cmluZ106IHN0cmluZztcbiAgICB9O1xuICB9O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluaXRpYWxpemVTcG90Q2hlY2tzUHJvcHMge1xuICBkb21haW5OYW1lOiBzdHJpbmc7XG4gIHRhcmdldFRva2VuOiBzdHJpbmc7XG4gIHVzZXJEZXRhaWxzPzogVXNlckRldGFpbHM7XG4gIHZhcmlhYmxlcz86IFZhcmlhYmxlcztcbiAgY3VzdG9tUHJvcGVydGllcz86IEN1c3RvbVByb3BlcnRpZXM7XG59XG4iXX0=
|
|
@@ -236,7 +236,7 @@ const setAppearance = async (responseJson, screen, domainName, traceId, variable
|
|
|
236
236
|
throw new Error(error.message);
|
|
237
237
|
}
|
|
238
238
|
}
|
|
239
|
-
throw new Error('
|
|
239
|
+
throw new Error('Something went wrong');
|
|
240
240
|
}
|
|
241
241
|
catch (error) {
|
|
242
242
|
throw new Error(error.message);
|
|
@@ -730,13 +730,13 @@ const sendTrackScreenRequest = async ({ screen, options, }) => {
|
|
|
730
730
|
let variables = {};
|
|
731
731
|
let customProperties = {};
|
|
732
732
|
let userDetails = {};
|
|
733
|
-
if (options.variables && Object.keys(options.variables).length > 0) {
|
|
733
|
+
if (options && options.variables && Object.keys(options.variables).length > 0) {
|
|
734
734
|
variables = { ...oldState.variables, ...options.variables };
|
|
735
735
|
}
|
|
736
|
-
if (options.customProperties && Object.keys(options.customProperties).length > 0) {
|
|
736
|
+
if (options && options.customProperties && Object.keys(options.customProperties).length > 0) {
|
|
737
737
|
customProperties = { ...oldState.customProperties, ...options.customProperties };
|
|
738
738
|
}
|
|
739
|
-
if (options.userDetails && Object.keys(options.userDetails).length > 0) {
|
|
739
|
+
if (options && options.userDetails && Object.keys(options.userDetails).length > 0) {
|
|
740
740
|
userDetails = { ...oldState.userDetails, ...options.userDetails };
|
|
741
741
|
}
|
|
742
742
|
let traceId = oldState.traceId;
|