@envive-ai/react-hooks 0.3.18 → 0.3.19-alpha-marlo-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.
Files changed (206) hide show
  1. package/dist/application/commerce-api.cjs +14 -13
  2. package/dist/application/commerce-api.js +14 -13
  3. package/dist/application/logging/logger.cjs +16 -10
  4. package/dist/application/logging/logger.js +16 -10
  5. package/dist/application/models/guards/api/isApiFormResponse.cjs +9 -8
  6. package/dist/application/models/guards/api/isApiFormResponse.js +9 -8
  7. package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.cjs +6 -5
  8. package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.js +6 -5
  9. package/dist/application/models/guards/api/isApiOrderResponseAttributes.cjs +19 -18
  10. package/dist/application/models/guards/api/isApiOrderResponseAttributes.js +19 -18
  11. package/dist/application/models/guards/api/isApiOrgConfigResults.cjs +27 -26
  12. package/dist/application/models/guards/api/isApiOrgConfigResults.js +27 -26
  13. package/dist/application/models/guards/api/isApiOrganizationConfig.cjs +23 -22
  14. package/dist/application/models/guards/api/isApiOrganizationConfig.js +23 -22
  15. package/dist/application/models/guards/api/isApiProductResponseAttributes.cjs +12 -11
  16. package/dist/application/models/guards/api/isApiProductResponseAttributes.js +12 -11
  17. package/dist/application/models/guards/api/isApiResponse.cjs +7 -6
  18. package/dist/application/models/guards/api/isApiResponse.js +7 -6
  19. package/dist/application/models/guards/graphQL/isGraphQLColorsConfig.cjs +5 -4
  20. package/dist/application/models/guards/graphQL/isGraphQLColorsConfig.js +5 -4
  21. package/dist/application/models/validators/validateGraphQLFrontendConfig.cjs +15 -14
  22. package/dist/application/models/validators/validateGraphQLFrontendConfig.js +15 -14
  23. package/dist/application/utils/analyticsUtils.cjs +4 -3
  24. package/dist/application/utils/analyticsUtils.js +4 -3
  25. package/dist/application/utils/nextMessageRequestToApiRequest.cjs +3 -1
  26. package/dist/application/utils/nextMessageRequestToApiRequest.js +3 -1
  27. package/dist/atoms/app/index.d.cts +1 -1
  28. package/dist/atoms/app/index.d.ts +7 -7
  29. package/dist/atoms/app/variant.cjs +3 -2
  30. package/dist/atoms/app/variant.d.cts +6 -6
  31. package/dist/atoms/app/variant.js +3 -2
  32. package/dist/atoms/chat/chatState.d.cts +18 -18
  33. package/dist/atoms/chat/chatState.d.ts +18 -18
  34. package/dist/atoms/chat/form.d.cts +3 -3
  35. package/dist/atoms/chat/form.d.ts +2 -2
  36. package/dist/atoms/chat/index.d.cts +3 -3
  37. package/dist/atoms/chat/index.d.ts +3 -3
  38. package/dist/atoms/chat/lastMessage.d.cts +2 -2
  39. package/dist/atoms/chat/lastMessage.d.ts +2 -2
  40. package/dist/atoms/chat/messageQueue.d.cts +7 -7
  41. package/dist/atoms/chat/messageQueue.d.ts +6 -6
  42. package/dist/atoms/chat/performanceMetrics.cjs +3 -2
  43. package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
  44. package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
  45. package/dist/atoms/chat/performanceMetrics.js +3 -2
  46. package/dist/atoms/chat/renderedWidgetRefs.d.cts +3 -3
  47. package/dist/atoms/chat/renderedWidgetRefs.d.ts +2 -2
  48. package/dist/atoms/chat/replies.d.cts +3 -3
  49. package/dist/atoms/chat/replies.d.ts +3 -3
  50. package/dist/atoms/chat/suggestions.d.cts +3 -3
  51. package/dist/atoms/chat/suggestions.d.ts +2 -2
  52. package/dist/atoms/envive/enviveConfig.cjs +5 -4
  53. package/dist/atoms/envive/enviveConfig.d.cts +13 -13
  54. package/dist/atoms/envive/enviveConfig.d.ts +13 -13
  55. package/dist/atoms/envive/enviveConfig.js +5 -4
  56. package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
  57. package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
  58. package/dist/atoms/org/customerService.d.cts +6 -6
  59. package/dist/atoms/org/customerService.d.ts +6 -6
  60. package/dist/atoms/org/graphqlConfig.d.cts +4 -4
  61. package/dist/atoms/org/graphqlConfig.d.ts +4 -4
  62. package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
  63. package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
  64. package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
  65. package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
  66. package/dist/atoms/search/chatSearch.d.cts +17 -17
  67. package/dist/atoms/search/searchAPI.d.cts +13 -13
  68. package/dist/atoms/search/types.d.cts +1 -1
  69. package/dist/atoms/search/utils.d.cts +1 -1
  70. package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
  71. package/dist/contexts/amplitudeContext/amplitudeContext.cjs +4 -3
  72. package/dist/contexts/amplitudeContext/amplitudeContext.js +3 -2
  73. package/dist/contexts/enviveConfigContext/enviveConfigContext.cjs +26 -15
  74. package/dist/contexts/enviveConfigContext/enviveConfigContext.d.cts +2 -4
  75. package/dist/contexts/enviveConfigContext/enviveConfigContext.d.ts +2 -4
  76. package/dist/contexts/enviveConfigContext/enviveConfigContext.js +29 -16
  77. package/dist/contexts/enviveConfigContext/index.cjs +2 -1
  78. package/dist/contexts/enviveConfigContext/index.d.cts +2 -1
  79. package/dist/contexts/enviveConfigContext/index.d.ts +2 -1
  80. package/dist/contexts/enviveConfigContext/index.js +2 -1
  81. package/dist/contexts/enviveConfigContext/useEnviveConfig.cjs +12 -0
  82. package/dist/contexts/enviveConfigContext/useEnviveConfig.d.cts +7 -0
  83. package/dist/contexts/enviveConfigContext/useEnviveConfig.d.ts +7 -0
  84. package/dist/contexts/enviveConfigContext/useEnviveConfig.js +11 -0
  85. package/dist/contexts/enviveContext/WindowChatToggleBinder.cjs +7 -5
  86. package/dist/contexts/enviveContext/WindowChatToggleBinder.js +6 -4
  87. package/dist/contexts/enviveContext/enviveContext.cjs +74 -45
  88. package/dist/contexts/enviveContext/enviveContext.d.cts +8 -2
  89. package/dist/contexts/enviveContext/enviveContext.d.ts +8 -2
  90. package/dist/contexts/enviveContext/enviveContext.js +75 -46
  91. package/dist/contexts/enviveContext/index.d.cts +2 -2
  92. package/dist/contexts/enviveContext/index.d.ts +2 -2
  93. package/dist/contexts/enviveContext/types.d.cts +1 -1
  94. package/dist/contexts/enviveContext/types.d.ts +1 -1
  95. package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.cjs +7 -6
  96. package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.js +7 -6
  97. package/dist/contexts/graphqlContext/graphqlContext.cjs +8 -7
  98. package/dist/contexts/graphqlContext/graphqlContext.js +8 -7
  99. package/dist/contexts/hardcopyContext/hardcopyContext.cjs +9 -8
  100. package/dist/contexts/hardcopyContext/hardcopyContext.js +9 -8
  101. package/dist/contexts/localStorageContext/localStorageContext.cjs +4 -3
  102. package/dist/contexts/localStorageContext/localStorageContext.js +4 -3
  103. package/dist/contexts/pageContext/pageContext.cjs +23 -4
  104. package/dist/contexts/pageContext/pageContext.d.cts +3 -1
  105. package/dist/contexts/pageContext/pageContext.d.ts +3 -1
  106. package/dist/contexts/pageContext/pageContext.js +24 -5
  107. package/dist/contexts/pageContext/types.d.ts +1 -1
  108. package/dist/contexts/salesAgentContext/chatAPI.cjs +3 -2
  109. package/dist/contexts/salesAgentContext/chatAPI.js +3 -2
  110. package/dist/contexts/salesAgentContext/salesAgentContext.cjs +4 -3
  111. package/dist/contexts/salesAgentContext/salesAgentContext.js +4 -3
  112. package/dist/contexts/salesAgentContext/salesAgentService.cjs +3 -2
  113. package/dist/contexts/salesAgentContext/salesAgentService.js +3 -2
  114. package/dist/contexts/searchContext/searchContext.cjs +8 -6
  115. package/dist/contexts/searchContext/searchContext.js +7 -5
  116. package/dist/contexts/sessionStorageContext/sessionStorageContext.cjs +3 -2
  117. package/dist/contexts/sessionStorageContext/sessionStorageContext.js +3 -2
  118. package/dist/contexts/systemSettingsContext/systemSettingsContext.d.ts +2 -2
  119. package/dist/contexts/types.d.cts +1 -1
  120. package/dist/contexts/types.d.ts +1 -1
  121. package/dist/contexts/typesV3.d.cts +1 -1
  122. package/dist/contexts/uiConfigContext/index.cjs +0 -1
  123. package/dist/contexts/uiConfigContext/index.d.cts +2 -2
  124. package/dist/contexts/uiConfigContext/index.d.ts +2 -2
  125. package/dist/contexts/uiConfigContext/index.js +2 -2
  126. package/dist/contexts/uiConfigContext/uiConfigContext.cjs +13 -30
  127. package/dist/contexts/uiConfigContext/uiConfigContext.d.cts +5 -9
  128. package/dist/contexts/uiConfigContext/uiConfigContext.d.ts +5 -9
  129. package/dist/contexts/uiConfigContext/uiConfigContext.js +14 -29
  130. package/dist/contexts/userIdentityContext/userIdentityContext.cjs +7 -7
  131. package/dist/contexts/userIdentityContext/userIdentityContext.js +7 -7
  132. package/dist/contexts/widgetConfigContext/widgetConfigContext.cjs +4 -3
  133. package/dist/contexts/widgetConfigContext/widgetConfigContext.js +4 -3
  134. package/dist/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.cjs +4 -3
  135. package/dist/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.js +4 -3
  136. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.cts +2 -2
  137. package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +2 -2
  138. package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.cts +2 -2
  139. package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.ts +2 -2
  140. package/dist/hooks/SystemSettingsContext/useSystemSettingsContext.d.ts +2 -2
  141. package/dist/hooks/WidgetInteraction/useWidgetInteraction.cjs +2 -2
  142. package/dist/hooks/WidgetInteraction/useWidgetInteraction.js +2 -2
  143. package/dist/hooks/WidgetInteraction/utils.cjs +2 -1
  144. package/dist/hooks/WidgetInteraction/utils.js +2 -1
  145. package/dist/hooks/utils.d.cts +1 -1
  146. package/dist/hooks/utils.d.ts +1 -1
  147. package/dist/services/amplitudeService/amplitudeService.cjs +15 -7
  148. package/dist/services/amplitudeService/amplitudeService.d.cts +2 -1
  149. package/dist/services/amplitudeService/amplitudeService.d.ts +2 -1
  150. package/dist/services/amplitudeService/amplitudeService.js +15 -7
  151. package/dist/services/ga4ProjectionService/ga4ProjectionService.cjs +3 -2
  152. package/dist/services/ga4ProjectionService/ga4ProjectionService.js +3 -2
  153. package/dist/services/userIdentityService/userIdentityService.cjs +8 -7
  154. package/dist/services/userIdentityService/userIdentityService.js +8 -7
  155. package/package.json +2 -2
  156. package/src/application/commerce-api.ts +14 -12
  157. package/src/application/logging/logger.ts +33 -8
  158. package/src/application/models/guards/api/isApiFormResponse.ts +9 -7
  159. package/src/application/models/guards/api/isApiFormSubmittedResponseAttributes.ts +6 -4
  160. package/src/application/models/guards/api/isApiOrderResponseAttributes.ts +19 -17
  161. package/src/application/models/guards/api/isApiOrgConfigResults.ts +40 -48
  162. package/src/application/models/guards/api/isApiOrganizationConfig.ts +25 -38
  163. package/src/application/models/guards/api/isApiProductResponseAttributes.ts +12 -10
  164. package/src/application/models/guards/api/isApiResponse.ts +7 -5
  165. package/src/application/models/guards/graphQL/isGraphQLColorsConfig.ts +5 -3
  166. package/src/application/models/validators/validateGraphQLFrontendConfig.ts +15 -13
  167. package/src/application/utils/analyticsUtils.ts +4 -4
  168. package/src/application/utils/nextMessageRequestToApiRequest.ts +2 -0
  169. package/src/atoms/app/variant.ts +3 -1
  170. package/src/atoms/chat/performanceMetrics.ts +3 -1
  171. package/src/atoms/envive/enviveConfig.ts +5 -3
  172. package/src/contexts/amplitudeContext/amplitudeContext.tsx +1 -1
  173. package/src/contexts/enviveConfigContext/__tests__/enviveConfigContext.test.tsx +4 -3
  174. package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +50 -35
  175. package/src/contexts/enviveConfigContext/index.ts +1 -0
  176. package/src/contexts/enviveConfigContext/useEnviveConfig.ts +9 -0
  177. package/src/contexts/enviveContext/WindowChatToggleBinder.tsx +6 -4
  178. package/src/contexts/enviveContext/enviveContext.tsx +109 -50
  179. package/src/contexts/featureFlagServiceContext/featureFlagServiceContext.tsx +11 -12
  180. package/src/contexts/graphqlContext/__tests__/graphqlContext.test.tsx +4 -4
  181. package/src/contexts/graphqlContext/graphqlContext.tsx +8 -6
  182. package/src/contexts/hardcopyContext/hardcopyContext.tsx +9 -7
  183. package/src/contexts/localStorageContext/__tests__/localStorageContext.test.tsx +6 -6
  184. package/src/contexts/localStorageContext/localStorageContext.tsx +4 -2
  185. package/src/contexts/pageContext/__tests__/pageContext.test.tsx +5 -5
  186. package/src/contexts/pageContext/pageContext.tsx +22 -2
  187. package/src/contexts/salesAgentContext/chatAPI.ts +5 -5
  188. package/src/contexts/salesAgentContext/salesAgentContext.tsx +4 -2
  189. package/src/contexts/salesAgentContext/salesAgentService.ts +4 -2
  190. package/src/contexts/searchContext/__tests__/searchContext.test.tsx +15 -12
  191. package/src/contexts/searchContext/searchContext.tsx +6 -4
  192. package/src/contexts/sessionStorageContext/sessionStorageContext.tsx +3 -1
  193. package/src/contexts/uiConfigContext/__tests__/uiConfigContext.test.tsx +7 -32
  194. package/src/contexts/uiConfigContext/uiConfigContext.tsx +17 -29
  195. package/src/contexts/userIdentityContext/__tests__/userIdentityContext.test.tsx +5 -5
  196. package/src/contexts/userIdentityContext/userIdentityContext.tsx +7 -6
  197. package/src/contexts/widgetConfigContext/__tests__/widgetConfigContext.test.tsx +7 -7
  198. package/src/contexts/widgetConfigContext/widgetConfigContext.tsx +4 -2
  199. package/src/hooks/CustomerSupportHandoff/useCustomerSupportHandoff.ts +4 -2
  200. package/src/hooks/Search/__tests__/useSearch.test.tsx +14 -8
  201. package/src/hooks/WidgetInteraction/useWidgetInteraction.ts +3 -2
  202. package/src/hooks/WidgetInteraction/utils.ts +3 -1
  203. package/src/services/amplitudeService/__tests__/amplitudeService.test.ts +3 -3
  204. package/src/services/amplitudeService/amplitudeService.ts +19 -6
  205. package/src/services/ga4ProjectionService/ga4ProjectionService.ts +3 -1
  206. package/src/services/userIdentityService/userIdentityService.ts +8 -8
@@ -9,7 +9,7 @@ declare const useShopifyUrlOperations: () => {
9
9
  isReady: boolean;
10
10
  };
11
11
  declare const useCurrentPageType: () => {
12
- getPageType: () => "unknown" | "pdp" | "plp" | "other";
12
+ getPageType: () => "pdp" | "plp" | "other" | "unknown";
13
13
  isReady: boolean;
14
14
  };
15
15
  declare const useProductId: (extractor: IdExtractor) => {
@@ -18,4 +18,4 @@ declare const useProductId: (extractor: IdExtractor) => {
18
18
  };
19
19
  //#endregion
20
20
  export { useCurrentPageType, useProductId, useShopifyUrlOperations };
21
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlU2hvcGlmeVVybE9wZXJhdGlvbnMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvU2hvcGlmeVVybE9wZXJhdGlvbnMvdXNlU2hvcGlmeVVybE9wZXJhdGlvbnMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEV4dHJhY3RvciB9IGZyb20gJ3NyYy9jb250ZXh0cy90eXBlcyc7XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VTaG9waWZ5VXJsT3BlcmF0aW9uczogKCkgPT4ge1xuICAgIGdldFRyaW1tZWRQYXRoTmFtZTogKCkgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICBnZXRQbHBPclBkcElkOiAoZXh0cmFjdG9yOiBJZEV4dHJhY3RvcikgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICBpc09uUGRwUGFnZTogKCkgPT4gYm9vbGVhbjtcbiAgICBpc09uUGxwUGFnZTogKCkgPT4gYm9vbGVhbjtcbiAgICBpc1JlYWR5OiBib29sZWFuO1xufTtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZUN1cnJlbnRQYWdlVHlwZTogKCkgPT4ge1xuICAgIGdldFBhZ2VUeXBlOiAoKSA9PiBcInVua25vd25cIiB8IFwicGRwXCIgfCBcInBscFwiIHwgXCJvdGhlclwiO1xuICAgIGlzUmVhZHk6IGJvb2xlYW47XG59O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlUHJvZHVjdElkOiAoZXh0cmFjdG9yOiBJZEV4dHJhY3RvcikgPT4ge1xuICAgIHByb2R1Y3RJZDogKCkgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICBpc1JlYWR5OiBib29sZWFuO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsSUFBVywwQkFBMEIsQ0FBQyxXQUFXLFlBQUc7QUFDcEQsSUFBVyxxQkFBcUIsQ0FBQyxJQUFJO0FBQ3JDLElBQVcsZUFBZSxDQUFDLFdBQVcsWUFBWSJ9
21
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlU2hvcGlmeVVybE9wZXJhdGlvbnMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaG9va3MvU2hvcGlmeVVybE9wZXJhdGlvbnMvdXNlU2hvcGlmeVVybE9wZXJhdGlvbnMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJZEV4dHJhY3RvciB9IGZyb20gJ3NyYy9jb250ZXh0cy90eXBlcyc7XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VTaG9waWZ5VXJsT3BlcmF0aW9uczogKCkgPT4ge1xuICAgIGdldFRyaW1tZWRQYXRoTmFtZTogKCkgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICBnZXRQbHBPclBkcElkOiAoZXh0cmFjdG9yOiBJZEV4dHJhY3RvcikgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICBpc09uUGRwUGFnZTogKCkgPT4gYm9vbGVhbjtcbiAgICBpc09uUGxwUGFnZTogKCkgPT4gYm9vbGVhbjtcbiAgICBpc1JlYWR5OiBib29sZWFuO1xufTtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZUN1cnJlbnRQYWdlVHlwZTogKCkgPT4ge1xuICAgIGdldFBhZ2VUeXBlOiAoKSA9PiBcInBkcFwiIHwgXCJwbHBcIiB8IFwib3RoZXJcIiB8IFwidW5rbm93blwiO1xuICAgIGlzUmVhZHk6IGJvb2xlYW47XG59O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlUHJvZHVjdElkOiAoZXh0cmFjdG9yOiBJZEV4dHJhY3RvcikgPT4ge1xuICAgIHByb2R1Y3RJZDogKCkgPT4gc3RyaW5nIHwgbnVsbDtcbiAgICBpc1JlYWR5OiBib29sZWFuO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsSUFBVywwQkFBMEIsQ0FBQyxXQUFXLFlBQUc7QUFDcEQsSUFBVyxxQkFBcUIsQ0FBQyxJQUFJO0FBQ3JDLElBQVcsZUFBZSxDQUFDLFdBQVcsWUFBWSJ9
@@ -1,12 +1,12 @@
1
1
  import { GenerationParams } from "../../application/models/api/generationParams.js";
2
- import * as react0 from "react";
2
+ import * as react1 from "react";
3
3
 
4
4
  //#region src/hooks/SystemSettingsContext/useSystemSettingsContext.d.ts
5
5
  declare const useSystemSettingsContext: () => {
6
6
  generationParams?: GenerationParams;
7
7
  showDebugBar?: boolean;
8
8
  endpointURL?: string;
9
- setGenerationParams: react0.Dispatch<react0.SetStateAction<GenerationParams | undefined>>;
9
+ setGenerationParams: react1.Dispatch<react1.SetStateAction<GenerationParams | undefined>>;
10
10
  };
11
11
  //#endregion
12
12
  export { useSystemSettingsContext };
@@ -8,6 +8,7 @@ let jotai = require("jotai");
8
8
  let uuid = require("uuid");
9
9
 
10
10
  //#region src/hooks/WidgetInteraction/useWidgetInteraction.ts
11
+ const getInteractionId = () => (0, uuid.v4)();
11
12
  const useWidgetInteraction = () => {
12
13
  const { trackEvent } = require_amplitudeContext.useAmplitude();
13
14
  const variantInfo = (0, jotai.useAtomValue)(require_variant.pageVariantInfoAtom);
@@ -22,7 +23,6 @@ const useWidgetInteraction = () => {
22
23
  eventProps: { ...eventProps }
23
24
  });
24
25
  };
25
- const getInteractionId = () => (0, uuid.v4)();
26
26
  return {
27
27
  trackWidgetInteraction,
28
28
  getInteractionId
@@ -31,4 +31,4 @@ const useWidgetInteraction = () => {
31
31
 
32
32
  //#endregion
33
33
  exports.useWidgetInteraction = useWidgetInteraction;
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uY2pzIiwibmFtZXMiOlsidXNlQW1wbGl0dWRlIiwicGFnZVZhcmlhbnRJbmZvQXRvbSIsImV4dHJhY3RQYWdlQ29udGV4dCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9XaWRnZXRJbnRlcmFjdGlvbi91c2VXaWRnZXRJbnRlcmFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VBdG9tVmFsdWUgfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBwYWdlVmFyaWFudEluZm9BdG9tIH0gZnJvbSAnc3JjL2F0b21zL2FwcCc7XG5pbXBvcnQgeyB1c2VBbXBsaXR1ZGUgfSBmcm9tICdzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dCc7XG5pbXBvcnQgeyBQYWdlVmFyaWFudEluZm8gfSBmcm9tICdzcmMvY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvbiwgV2lkZ2V0SW50ZXJhY3Rpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGV4dHJhY3RQYWdlQ29udGV4dCB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdXNlV2lkZ2V0SW50ZXJhY3Rpb24gPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IHZhcmlhbnRJbmZvID0gdXNlQXRvbVZhbHVlKHBhZ2VWYXJpYW50SW5mb0F0b20pO1xuXG4gIGNvbnN0IHRyYWNrV2lkZ2V0SW50ZXJhY3Rpb24gPSAocHJvcHM6IFdpZGdldEludGVyYWN0aW9uKSA9PiB7XG4gICAgaWYgKHByb3BzLnRyaWdnZXIpIHtcbiAgICAgIHByb3BzLnRyaWdnZXIuaW50ZXJhY3Rpb25faWQgPSBwcm9wcy50cmlnZ2VyLmludGVyYWN0aW9uX2lkIHx8IGdldEludGVyYWN0aW9uSWQoKTtcbiAgICB9XG5cbiAgICBjb25zdCBldmVudFByb3BzID0ge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb250ZXh0OiBleHRyYWN0UGFnZUNvbnRleHQodmFyaWFudEluZm8gYXMgUGFnZVZhcmlhbnRJbmZvKSxcbiAgICB9IGFzIEludGVybmFsV2lkZ2V0SW50ZXJhY3Rpb247XG5cbiAgICB0cmFja0V2ZW50KHtcbiAgICAgIGV2ZW50TmFtZTogcHJvcHMuZXZlbnROYW1lLFxuICAgICAgZXZlbnRQcm9wczogeyAuLi5ldmVudFByb3BzIH0sXG4gICAgfSk7XG4gIH07XG5cbiAgY29uc3QgZ2V0SW50ZXJhY3Rpb25JZCA9ICgpID0+IHV1aWQoKTtcblxuICByZXR1cm4ge1xuICAgIHRyYWNrV2lkZ2V0SW50ZXJhY3Rpb24sXG4gICAgZ2V0SW50ZXJhY3Rpb25JZCxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFRQSxNQUFhLDZCQUE2QjtDQUN4QyxNQUFNLEVBQUUsZUFBZUEsdUNBQWM7Q0FDckMsTUFBTSxzQ0FBMkJDLG9DQUFvQjtDQUVyRCxNQUFNLDBCQUEwQixVQUE2QjtBQUMzRCxNQUFJLE1BQU0sUUFDUixPQUFNLFFBQVEsaUJBQWlCLE1BQU0sUUFBUSxrQkFBa0Isa0JBQWtCO0VBR25GLE1BQU0sYUFBYTtHQUNqQixHQUFHO0dBQ0gsU0FBU0MseURBQW1CLFlBQStCO0dBQzVEO0FBRUQsYUFBVztHQUNULFdBQVcsTUFBTTtHQUNqQixZQUFZLEVBQUUsR0FBRyxZQUFZO0dBQzlCLENBQUM7O0NBR0osTUFBTSx1Q0FBK0I7QUFFckMsUUFBTztFQUNMO0VBQ0E7RUFDRCJ9
34
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uY2pzIiwibmFtZXMiOlsidXNlQW1wbGl0dWRlIiwicGFnZVZhcmlhbnRJbmZvQXRvbSIsImV4dHJhY3RQYWdlQ29udGV4dCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9XaWRnZXRJbnRlcmFjdGlvbi91c2VXaWRnZXRJbnRlcmFjdGlvbi50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VBdG9tVmFsdWUgfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBwYWdlVmFyaWFudEluZm9BdG9tIH0gZnJvbSAnc3JjL2F0b21zL2FwcCc7XG5pbXBvcnQgeyB1c2VBbXBsaXR1ZGUgfSBmcm9tICdzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dCc7XG5pbXBvcnQgeyBQYWdlVmFyaWFudEluZm8gfSBmcm9tICdzcmMvY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gJ3V1aWQnO1xuaW1wb3J0IHsgSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvbiwgV2lkZ2V0SW50ZXJhY3Rpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IGV4dHJhY3RQYWdlQ29udGV4dCB9IGZyb20gJy4vdXRpbHMnO1xuXG5jb25zdCBnZXRJbnRlcmFjdGlvbklkID0gKCkgPT4gdXVpZCgpO1xuXG5leHBvcnQgY29uc3QgdXNlV2lkZ2V0SW50ZXJhY3Rpb24gPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IHZhcmlhbnRJbmZvID0gdXNlQXRvbVZhbHVlKHBhZ2VWYXJpYW50SW5mb0F0b20pO1xuXG4gIGNvbnN0IHRyYWNrV2lkZ2V0SW50ZXJhY3Rpb24gPSAocHJvcHM6IFdpZGdldEludGVyYWN0aW9uKSA9PiB7XG4gICAgaWYgKHByb3BzLnRyaWdnZXIpIHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1wYXJhbS1yZWFzc2lnblxuICAgICAgcHJvcHMudHJpZ2dlci5pbnRlcmFjdGlvbl9pZCA9IHByb3BzLnRyaWdnZXIuaW50ZXJhY3Rpb25faWQgfHwgZ2V0SW50ZXJhY3Rpb25JZCgpO1xuICAgIH1cblxuICAgIGNvbnN0IGV2ZW50UHJvcHMgPSB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGNvbnRleHQ6IGV4dHJhY3RQYWdlQ29udGV4dCh2YXJpYW50SW5mbyBhcyBQYWdlVmFyaWFudEluZm8pLFxuICAgIH0gYXMgSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvbjtcblxuICAgIHRyYWNrRXZlbnQoe1xuICAgICAgZXZlbnROYW1lOiBwcm9wcy5ldmVudE5hbWUsXG4gICAgICBldmVudFByb3BzOiB7IC4uLmV2ZW50UHJvcHMgfSxcbiAgICB9KTtcbiAgfTtcblxuICByZXR1cm4ge1xuICAgIHRyYWNrV2lkZ2V0SW50ZXJhY3Rpb24sXG4gICAgZ2V0SW50ZXJhY3Rpb25JZCxcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFRQSxNQUFNLHVDQUErQjtBQUVyQyxNQUFhLDZCQUE2QjtDQUN4QyxNQUFNLEVBQUUsZUFBZUEsdUNBQWM7Q0FDckMsTUFBTSxzQ0FBMkJDLG9DQUFvQjtDQUVyRCxNQUFNLDBCQUEwQixVQUE2QjtBQUMzRCxNQUFJLE1BQU0sUUFFUixPQUFNLFFBQVEsaUJBQWlCLE1BQU0sUUFBUSxrQkFBa0Isa0JBQWtCO0VBR25GLE1BQU0sYUFBYTtHQUNqQixHQUFHO0dBQ0gsU0FBU0MseURBQW1CLFlBQStCO0dBQzVEO0FBRUQsYUFBVztHQUNULFdBQVcsTUFBTTtHQUNqQixZQUFZLEVBQUUsR0FBRyxZQUFZO0dBQzlCLENBQUM7O0FBR0osUUFBTztFQUNMO0VBQ0E7RUFDRCJ9
@@ -7,6 +7,7 @@ import { useAtomValue } from "jotai";
7
7
  import { v4 } from "uuid";
8
8
 
9
9
  //#region src/hooks/WidgetInteraction/useWidgetInteraction.ts
10
+ const getInteractionId = () => v4();
10
11
  const useWidgetInteraction = () => {
11
12
  const { trackEvent } = useAmplitude();
12
13
  const variantInfo = useAtomValue(pageVariantInfoAtom);
@@ -21,7 +22,6 @@ const useWidgetInteraction = () => {
21
22
  eventProps: { ...eventProps }
22
23
  });
23
24
  };
24
- const getInteractionId = () => v4();
25
25
  return {
26
26
  trackWidgetInteraction,
27
27
  getInteractionId
@@ -30,4 +30,4 @@ const useWidgetInteraction = () => {
30
30
 
31
31
  //#endregion
32
32
  export { useWidgetInteraction };
33
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uanMiLCJuYW1lcyI6WyJ1dWlkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3VzZVdpZGdldEludGVyYWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUF0b21WYWx1ZSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCB7IHBhZ2VWYXJpYW50SW5mb0F0b20gfSBmcm9tICdzcmMvYXRvbXMvYXBwJztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcbmltcG9ydCB7IFBhZ2VWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9jb250ZXh0cy9wYWdlQ29udGV4dC90eXBlcyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBJbnRlcm5hbFdpZGdldEludGVyYWN0aW9uLCBXaWRnZXRJbnRlcmFjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgZXh0cmFjdFBhZ2VDb250ZXh0IH0gZnJvbSAnLi91dGlscyc7XG5cbmV4cG9ydCBjb25zdCB1c2VXaWRnZXRJbnRlcmFjdGlvbiA9ICgpID0+IHtcbiAgY29uc3QgeyB0cmFja0V2ZW50IH0gPSB1c2VBbXBsaXR1ZGUoKTtcbiAgY29uc3QgdmFyaWFudEluZm8gPSB1c2VBdG9tVmFsdWUocGFnZVZhcmlhbnRJbmZvQXRvbSk7XG5cbiAgY29uc3QgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbiA9IChwcm9wczogV2lkZ2V0SW50ZXJhY3Rpb24pID0+IHtcbiAgICBpZiAocHJvcHMudHJpZ2dlcikge1xuICAgICAgcHJvcHMudHJpZ2dlci5pbnRlcmFjdGlvbl9pZCA9IHByb3BzLnRyaWdnZXIuaW50ZXJhY3Rpb25faWQgfHwgZ2V0SW50ZXJhY3Rpb25JZCgpO1xuICAgIH1cblxuICAgIGNvbnN0IGV2ZW50UHJvcHMgPSB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGNvbnRleHQ6IGV4dHJhY3RQYWdlQ29udGV4dCh2YXJpYW50SW5mbyBhcyBQYWdlVmFyaWFudEluZm8pLFxuICAgIH0gYXMgSW50ZXJuYWxXaWRnZXRJbnRlcmFjdGlvbjtcblxuICAgIHRyYWNrRXZlbnQoe1xuICAgICAgZXZlbnROYW1lOiBwcm9wcy5ldmVudE5hbWUsXG4gICAgICBldmVudFByb3BzOiB7IC4uLmV2ZW50UHJvcHMgfSxcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBnZXRJbnRlcmFjdGlvbklkID0gKCkgPT4gdXVpZCgpO1xuXG4gIHJldHVybiB7XG4gICAgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbixcbiAgICBnZXRJbnRlcmFjdGlvbklkLFxuICB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBUUEsTUFBYSw2QkFBNkI7Q0FDeEMsTUFBTSxFQUFFLGVBQWUsY0FBYztDQUNyQyxNQUFNLGNBQWMsYUFBYSxvQkFBb0I7Q0FFckQsTUFBTSwwQkFBMEIsVUFBNkI7QUFDM0QsTUFBSSxNQUFNLFFBQ1IsT0FBTSxRQUFRLGlCQUFpQixNQUFNLFFBQVEsa0JBQWtCLGtCQUFrQjtFQUduRixNQUFNLGFBQWE7R0FDakIsR0FBRztHQUNILFNBQVMsbUJBQW1CLFlBQStCO0dBQzVEO0FBRUQsYUFBVztHQUNULFdBQVcsTUFBTTtHQUNqQixZQUFZLEVBQUUsR0FBRyxZQUFZO0dBQzlCLENBQUM7O0NBR0osTUFBTSx5QkFBeUJBLElBQU07QUFFckMsUUFBTztFQUNMO0VBQ0E7RUFDRCJ9
33
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlV2lkZ2V0SW50ZXJhY3Rpb24uanMiLCJuYW1lcyI6WyJ1dWlkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3VzZVdpZGdldEludGVyYWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUF0b21WYWx1ZSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCB7IHBhZ2VWYXJpYW50SW5mb0F0b20gfSBmcm9tICdzcmMvYXRvbXMvYXBwJztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0JztcbmltcG9ydCB7IFBhZ2VWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9jb250ZXh0cy9wYWdlQ29udGV4dC90eXBlcyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBJbnRlcm5hbFdpZGdldEludGVyYWN0aW9uLCBXaWRnZXRJbnRlcmFjdGlvbiB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgZXh0cmFjdFBhZ2VDb250ZXh0IH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IGdldEludGVyYWN0aW9uSWQgPSAoKSA9PiB1dWlkKCk7XG5cbmV4cG9ydCBjb25zdCB1c2VXaWRnZXRJbnRlcmFjdGlvbiA9ICgpID0+IHtcbiAgY29uc3QgeyB0cmFja0V2ZW50IH0gPSB1c2VBbXBsaXR1ZGUoKTtcbiAgY29uc3QgdmFyaWFudEluZm8gPSB1c2VBdG9tVmFsdWUocGFnZVZhcmlhbnRJbmZvQXRvbSk7XG5cbiAgY29uc3QgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbiA9IChwcm9wczogV2lkZ2V0SW50ZXJhY3Rpb24pID0+IHtcbiAgICBpZiAocHJvcHMudHJpZ2dlcikge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXBhcmFtLXJlYXNzaWduXG4gICAgICBwcm9wcy50cmlnZ2VyLmludGVyYWN0aW9uX2lkID0gcHJvcHMudHJpZ2dlci5pbnRlcmFjdGlvbl9pZCB8fCBnZXRJbnRlcmFjdGlvbklkKCk7XG4gICAgfVxuXG4gICAgY29uc3QgZXZlbnRQcm9wcyA9IHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY29udGV4dDogZXh0cmFjdFBhZ2VDb250ZXh0KHZhcmlhbnRJbmZvIGFzIFBhZ2VWYXJpYW50SW5mbyksXG4gICAgfSBhcyBJbnRlcm5hbFdpZGdldEludGVyYWN0aW9uO1xuXG4gICAgdHJhY2tFdmVudCh7XG4gICAgICBldmVudE5hbWU6IHByb3BzLmV2ZW50TmFtZSxcbiAgICAgIGV2ZW50UHJvcHM6IHsgLi4uZXZlbnRQcm9wcyB9LFxuICAgIH0pO1xuICB9O1xuXG4gIHJldHVybiB7XG4gICAgdHJhY2tXaWRnZXRJbnRlcmFjdGlvbixcbiAgICBnZXRJbnRlcmFjdGlvbklkLFxuICB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBUUEsTUFBTSx5QkFBeUJBLElBQU07QUFFckMsTUFBYSw2QkFBNkI7Q0FDeEMsTUFBTSxFQUFFLGVBQWUsY0FBYztDQUNyQyxNQUFNLGNBQWMsYUFBYSxvQkFBb0I7Q0FFckQsTUFBTSwwQkFBMEIsVUFBNkI7QUFDM0QsTUFBSSxNQUFNLFFBRVIsT0FBTSxRQUFRLGlCQUFpQixNQUFNLFFBQVEsa0JBQWtCLGtCQUFrQjtFQUduRixNQUFNLGFBQWE7R0FDakIsR0FBRztHQUNILFNBQVMsbUJBQW1CLFlBQStCO0dBQzVEO0FBRUQsYUFBVztHQUNULFdBQVcsTUFBTTtHQUNqQixZQUFZLEVBQUUsR0FBRyxZQUFZO0dBQzlCLENBQUM7O0FBR0osUUFBTztFQUNMO0VBQ0E7RUFDRCJ9
@@ -25,10 +25,11 @@ const extractPageContext = (pageVariant) => {
25
25
  page_id: pageVariant.url,
26
26
  page_type: require_hooks_WidgetInteraction_types.WidgetInteractionPageType.FULL_PAGE
27
27
  };
28
+ default: return null;
28
29
  }
29
30
  return null;
30
31
  };
31
32
 
32
33
  //#endregion
33
34
  exports.extractPageContext = extractPageContext;
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuY2pzIiwibmFtZXMiOlsiVmFyaWFudFR5cGVFbnVtIiwiV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9XaWRnZXRJbnRlcmFjdGlvbi91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYXJpYW50VHlwZUVudW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7XG4gIEZ1bGxQYWdlU2FsZXNBZ2VudFZhcmlhbnRJbmZvLFxuICBIb21lVmFyaWFudEluZm8sXG4gIE90aGVyVmFyaWFudEluZm8sXG4gIFBhZ2VWYXJpYW50SW5mbyxcbiAgUERQUGFnZVZhcmlhbnRJbmZvLFxuICBQTFBQYWdlVmFyaWFudEluZm8sXG59IGZyb20gJy4uLy4uL2NvbnRleHRzL3BhZ2VDb250ZXh0L3R5cGVzJztcbmltcG9ydCB7IFdpZGdldEludGVyYWN0aW9uQ29udGV4dCwgV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgZXh0cmFjdFBhZ2VDb250ZXh0ID0gKFxuICBwYWdlVmFyaWFudDogUGFnZVZhcmlhbnRJbmZvLFxuKTogV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0IHwgbnVsbCA9PiB7XG4gIHN3aXRjaCAocGFnZVZhcmlhbnQudmFyaWFudFR5cGUpIHtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5QZHA6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgUERQUGFnZVZhcmlhbnRJbmZvKS5wcm9kdWN0SWQsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5QRFAsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLlBscDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBQTFBQYWdlVmFyaWFudEluZm8pLnBscElkLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuUExQLFxuICAgICAgfTtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5Ib21lOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIEhvbWVWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuSE9NRVBBR0UsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLk90aGVyOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIE90aGVyVmFyaWFudEluZm8pLnVybCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLk9USEVSLFxuICAgICAgfTtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5GdWxsUGFnZVNhbGVzQWdlbnQ6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgRnVsbFBhZ2VTYWxlc0FnZW50VmFyaWFudEluZm8pLnVybCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLkZVTExfUEFHRSxcbiAgICAgIH07XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBV0EsTUFBYSxzQkFDWCxnQkFDb0M7QUFDcEMsU0FBUSxZQUFZLGFBQXBCO0VBQ0UsS0FBS0Esb0NBQWdCLElBQ25CLFFBQU87R0FDTCxTQUFVLFlBQW1DO0dBQzdDLFdBQVdDLGdFQUEwQjtHQUN0QztFQUNILEtBQUtELG9DQUFnQixJQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFtQztHQUM3QyxXQUFXQyxnRUFBMEI7R0FDdEM7RUFDSCxLQUFLRCxvQ0FBZ0IsS0FDbkIsUUFBTztHQUNMLFNBQVUsWUFBZ0M7R0FDMUMsV0FBV0MsZ0VBQTBCO0dBQ3RDO0VBQ0gsS0FBS0Qsb0NBQWdCLE1BQ25CLFFBQU87R0FDTCxTQUFVLFlBQWlDO0dBQzNDLFdBQVdDLGdFQUEwQjtHQUN0QztFQUNILEtBQUtELG9DQUFnQixtQkFDbkIsUUFBTztHQUNMLFNBQVUsWUFBOEM7R0FDeEQsV0FBV0MsZ0VBQTBCO0dBQ3RDOztBQUdMLFFBQU8ifQ==
35
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuY2pzIiwibmFtZXMiOlsiVmFyaWFudFR5cGVFbnVtIiwiV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9ob29rcy9XaWRnZXRJbnRlcmFjdGlvbi91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBWYXJpYW50VHlwZUVudW0gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7XG4gIEZ1bGxQYWdlU2FsZXNBZ2VudFZhcmlhbnRJbmZvLFxuICBIb21lVmFyaWFudEluZm8sXG4gIE90aGVyVmFyaWFudEluZm8sXG4gIFBEUFBhZ2VWYXJpYW50SW5mbyxcbiAgUExQUGFnZVZhcmlhbnRJbmZvLFxuICBQYWdlVmFyaWFudEluZm8sXG59IGZyb20gJy4uLy4uL2NvbnRleHRzL3BhZ2VDb250ZXh0L3R5cGVzJztcbmltcG9ydCB7IFdpZGdldEludGVyYWN0aW9uQ29udGV4dCwgV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZSB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgY29uc3QgZXh0cmFjdFBhZ2VDb250ZXh0ID0gKFxuICBwYWdlVmFyaWFudDogUGFnZVZhcmlhbnRJbmZvLFxuKTogV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0IHwgbnVsbCA9PiB7XG4gIHN3aXRjaCAocGFnZVZhcmlhbnQudmFyaWFudFR5cGUpIHtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5QZHA6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgUERQUGFnZVZhcmlhbnRJbmZvKS5wcm9kdWN0SWQsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5QRFAsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLlBscDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBQTFBQYWdlVmFyaWFudEluZm8pLnBscElkLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuUExQLFxuICAgICAgfTtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5Ib21lOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIEhvbWVWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuSE9NRVBBR0UsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLk90aGVyOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIE90aGVyVmFyaWFudEluZm8pLnVybCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLk9USEVSLFxuICAgICAgfTtcbiAgICBjYXNlIFZhcmlhbnRUeXBlRW51bS5GdWxsUGFnZVNhbGVzQWdlbnQ6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgRnVsbFBhZ2VTYWxlc0FnZW50VmFyaWFudEluZm8pLnVybCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLkZVTExfUEFHRSxcbiAgICAgIH07XG4gICAgZGVmYXVsdDpcbiAgICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcmV0dXJuIG51bGw7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQVdBLE1BQWEsc0JBQ1gsZ0JBQ29DO0FBQ3BDLFNBQVEsWUFBWSxhQUFwQjtFQUNFLEtBQUtBLG9DQUFnQixJQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFtQztHQUM3QyxXQUFXQyxnRUFBMEI7R0FDdEM7RUFDSCxLQUFLRCxvQ0FBZ0IsSUFDbkIsUUFBTztHQUNMLFNBQVUsWUFBbUM7R0FDN0MsV0FBV0MsZ0VBQTBCO0dBQ3RDO0VBQ0gsS0FBS0Qsb0NBQWdCLEtBQ25CLFFBQU87R0FDTCxTQUFVLFlBQWdDO0dBQzFDLFdBQVdDLGdFQUEwQjtHQUN0QztFQUNILEtBQUtELG9DQUFnQixNQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFpQztHQUMzQyxXQUFXQyxnRUFBMEI7R0FDdEM7RUFDSCxLQUFLRCxvQ0FBZ0IsbUJBQ25CLFFBQU87R0FDTCxTQUFVLFlBQThDO0dBQ3hELFdBQVdDLGdFQUEwQjtHQUN0QztFQUNILFFBQ0UsUUFBTzs7QUFHWCxRQUFPIn0=
@@ -25,10 +25,11 @@ const extractPageContext = (pageVariant) => {
25
25
  page_id: pageVariant.url,
26
26
  page_type: WidgetInteractionPageType.FULL_PAGE
27
27
  };
28
+ default: return null;
28
29
  }
29
30
  return null;
30
31
  };
31
32
 
32
33
  //#endregion
33
34
  export { extractPageContext };
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhcmlhbnRUeXBlRW51bSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgRnVsbFBhZ2VTYWxlc0FnZW50VmFyaWFudEluZm8sXG4gIEhvbWVWYXJpYW50SW5mbyxcbiAgT3RoZXJWYXJpYW50SW5mbyxcbiAgUGFnZVZhcmlhbnRJbmZvLFxuICBQRFBQYWdlVmFyaWFudEluZm8sXG4gIFBMUFBhZ2VWYXJpYW50SW5mbyxcbn0gZnJvbSAnLi4vLi4vY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0LCBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBleHRyYWN0UGFnZUNvbnRleHQgPSAoXG4gIHBhZ2VWYXJpYW50OiBQYWdlVmFyaWFudEluZm8sXG4pOiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQgfCBudWxsID0+IHtcbiAgc3dpdGNoIChwYWdlVmFyaWFudC52YXJpYW50VHlwZSkge1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLlBkcDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBQRFBQYWdlVmFyaWFudEluZm8pLnByb2R1Y3RJZCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLlBEUCxcbiAgICAgIH07XG4gICAgY2FzZSBWYXJpYW50VHlwZUVudW0uUGxwOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIFBMUFBhZ2VWYXJpYW50SW5mbykucGxwSWQsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5QTFAsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLkhvbWU6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgSG9tZVZhcmlhbnRJbmZvKS51cmwsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5IT01FUEFHRSxcbiAgICAgIH07XG4gICAgY2FzZSBWYXJpYW50VHlwZUVudW0uT3RoZXI6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgT3RoZXJWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuT1RIRVIsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLkZ1bGxQYWdlU2FsZXNBZ2VudDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBGdWxsUGFnZVNhbGVzQWdlbnRWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuRlVMTF9QQUdFLFxuICAgICAgfTtcbiAgfVxuXG4gIHJldHVybiBudWxsO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFXQSxNQUFhLHNCQUNYLGdCQUNvQztBQUNwQyxTQUFRLFlBQVksYUFBcEI7RUFDRSxLQUFLLGdCQUFnQixJQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFtQztHQUM3QyxXQUFXLDBCQUEwQjtHQUN0QztFQUNILEtBQUssZ0JBQWdCLElBQ25CLFFBQU87R0FDTCxTQUFVLFlBQW1DO0dBQzdDLFdBQVcsMEJBQTBCO0dBQ3RDO0VBQ0gsS0FBSyxnQkFBZ0IsS0FDbkIsUUFBTztHQUNMLFNBQVUsWUFBZ0M7R0FDMUMsV0FBVywwQkFBMEI7R0FDdEM7RUFDSCxLQUFLLGdCQUFnQixNQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFpQztHQUMzQyxXQUFXLDBCQUEwQjtHQUN0QztFQUNILEtBQUssZ0JBQWdCLG1CQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUE4QztHQUN4RCxXQUFXLDBCQUEwQjtHQUN0Qzs7QUFHTCxRQUFPIn0=
35
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2hvb2tzL1dpZGdldEludGVyYWN0aW9uL3V0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhcmlhbnRUeXBlRW51bSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgRnVsbFBhZ2VTYWxlc0FnZW50VmFyaWFudEluZm8sXG4gIEhvbWVWYXJpYW50SW5mbyxcbiAgT3RoZXJWYXJpYW50SW5mbyxcbiAgUERQUGFnZVZhcmlhbnRJbmZvLFxuICBQTFBQYWdlVmFyaWFudEluZm8sXG4gIFBhZ2VWYXJpYW50SW5mbyxcbn0gZnJvbSAnLi4vLi4vY29udGV4dHMvcGFnZUNvbnRleHQvdHlwZXMnO1xuaW1wb3J0IHsgV2lkZ2V0SW50ZXJhY3Rpb25Db250ZXh0LCBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlIH0gZnJvbSAnLi90eXBlcyc7XG5cbmV4cG9ydCBjb25zdCBleHRyYWN0UGFnZUNvbnRleHQgPSAoXG4gIHBhZ2VWYXJpYW50OiBQYWdlVmFyaWFudEluZm8sXG4pOiBXaWRnZXRJbnRlcmFjdGlvbkNvbnRleHQgfCBudWxsID0+IHtcbiAgc3dpdGNoIChwYWdlVmFyaWFudC52YXJpYW50VHlwZSkge1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLlBkcDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBQRFBQYWdlVmFyaWFudEluZm8pLnByb2R1Y3RJZCxcbiAgICAgICAgcGFnZV90eXBlOiBXaWRnZXRJbnRlcmFjdGlvblBhZ2VUeXBlLlBEUCxcbiAgICAgIH07XG4gICAgY2FzZSBWYXJpYW50VHlwZUVudW0uUGxwOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgcGFnZV9pZDogKHBhZ2VWYXJpYW50IGFzIFBMUFBhZ2VWYXJpYW50SW5mbykucGxwSWQsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5QTFAsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLkhvbWU6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgSG9tZVZhcmlhbnRJbmZvKS51cmwsXG4gICAgICAgIHBhZ2VfdHlwZTogV2lkZ2V0SW50ZXJhY3Rpb25QYWdlVHlwZS5IT01FUEFHRSxcbiAgICAgIH07XG4gICAgY2FzZSBWYXJpYW50VHlwZUVudW0uT3RoZXI6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwYWdlX2lkOiAocGFnZVZhcmlhbnQgYXMgT3RoZXJWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuT1RIRVIsXG4gICAgICB9O1xuICAgIGNhc2UgVmFyaWFudFR5cGVFbnVtLkZ1bGxQYWdlU2FsZXNBZ2VudDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHBhZ2VfaWQ6IChwYWdlVmFyaWFudCBhcyBGdWxsUGFnZVNhbGVzQWdlbnRWYXJpYW50SW5mbykudXJsLFxuICAgICAgICBwYWdlX3R5cGU6IFdpZGdldEludGVyYWN0aW9uUGFnZVR5cGUuRlVMTF9QQUdFLFxuICAgICAgfTtcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBV0EsTUFBYSxzQkFDWCxnQkFDb0M7QUFDcEMsU0FBUSxZQUFZLGFBQXBCO0VBQ0UsS0FBSyxnQkFBZ0IsSUFDbkIsUUFBTztHQUNMLFNBQVUsWUFBbUM7R0FDN0MsV0FBVywwQkFBMEI7R0FDdEM7RUFDSCxLQUFLLGdCQUFnQixJQUNuQixRQUFPO0dBQ0wsU0FBVSxZQUFtQztHQUM3QyxXQUFXLDBCQUEwQjtHQUN0QztFQUNILEtBQUssZ0JBQWdCLEtBQ25CLFFBQU87R0FDTCxTQUFVLFlBQWdDO0dBQzFDLFdBQVcsMEJBQTBCO0dBQ3RDO0VBQ0gsS0FBSyxnQkFBZ0IsTUFDbkIsUUFBTztHQUNMLFNBQVUsWUFBaUM7R0FDM0MsV0FBVywwQkFBMEI7R0FDdEM7RUFDSCxLQUFLLGdCQUFnQixtQkFDbkIsUUFBTztHQUNMLFNBQVUsWUFBOEM7R0FDeEQsV0FBVywwQkFBMEI7R0FDdEM7RUFDSCxRQUNFLFFBQU87O0FBR1gsUUFBTyJ9
@@ -19,4 +19,4 @@ declare enum SearchResultsState {
19
19
  declare const getSearchResultsState: (isLoadingSearch: boolean, searchData: SearchResult | null) => SearchResultsState;
20
20
  //#endregion
21
21
  export { SearchResultsState, createAppLoadedEvent, createVisitUserEvent, getSearchResultsState, isElementPartiallyVisible, isWithinBusinessHours };
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoJztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudEluZm8gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsU0FBUyxlQUFlO0FBQ2hFLElBQVcsdUJBQXVCLENBQUMsU0FBUyxVQUFVO0FBQ3RELElBQVcsdUJBQXVCO0NBQUM7T0FBUztPQUFrQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxFQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsRUFBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVM7T0FBb0I7Q0FBbUIifQ==
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hvb2tzL3V0aWxzLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VhcmNoUmVzdWx0IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9hcGkvc2VhcmNoJztcbmltcG9ydCB7IFVzZXJFdmVudCwgVmFyaWFudEluZm8gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzRWxlbWVudFBhcnRpYWxseVZpc2libGU6IChlbD86IEhUTUxEaXZFbGVtZW50IHwgbnVsbCkgPT4gYm9vbGVhbjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZUFwcExvYWRlZEV2ZW50OiAoKSA9PiBVc2VyRXZlbnQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjcmVhdGVWaXNpdFVzZXJFdmVudDogKHsgdmFyaWFudEluZm8sIH06IHtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59KSA9PiBVc2VyRXZlbnQgfCB1bmRlZmluZWQ7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBpc1dpdGhpbkJ1c2luZXNzSG91cnM6IChzdGFydFRpbWU6IHN0cmluZywgZW5kVGltZTogc3RyaW5nLCB0aW1lWm9uZTogc3RyaW5nKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgZW51bSBTZWFyY2hSZXN1bHRzU3RhdGUge1xuICAgIExvYWRpbmcgPSAwLFxuICAgIFJlc3VsdHMgPSAxLFxuICAgIE5vUmVzdWx0cyA9IDJcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldFNlYXJjaFJlc3VsdHNTdGF0ZTogKGlzTG9hZGluZ1NlYXJjaDogYm9vbGVhbiwgc2VhcmNoRGF0YTogU2VhcmNoUmVzdWx0IHwgbnVsbCkgPT4gU2VhcmNoUmVzdWx0c1N0YXRlO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUVBLElBQVcsNEJBQTRCLENBQUMsVUFBVSxlQUFlO0FBQ2pFLElBQVcsdUJBQXVCLENBQUMsVUFBVSxVQUFVO0FBQ3ZELElBQVcsdUJBQXVCO0NBQUM7T0FBVTtPQUFpQjtPQUFBO0NBQUE7QUFDOUQsSUFBVyx3QkFBaUIsQ0FBQSxHQUFBO0FBQzVCLElBQVcscUJBQWdCLENBQUEsR0FBQTtBQUMzQixJQUFXLHdCQUF3QjtDQUFDO09BQVU7T0FBb0I7Q0FBbUIifQ==
@@ -19,4 +19,4 @@ declare enum SearchResultsState {
19
19
  declare const getSearchResultsState: (isLoadingSearch: boolean, searchData: SearchResult | null) => SearchResultsState;
20
20
  //#endregion
21
21
  export { SearchResultsState, createAppLoadedEvent, createVisitUserEvent, getSearchResultsState, isElementPartiallyVisible, isWithinBusinessHours };
22
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWFyY2hSZXN1bHQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS9zZWFyY2gnO1xuaW1wb3J0IHsgVXNlckV2ZW50LCBWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgaXNFbGVtZW50UGFydGlhbGx5VmlzaWJsZTogKGVsPzogSFRNTERpdkVsZW1lbnQgfCBudWxsKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgY3JlYXRlQXBwTG9hZGVkRXZlbnQ6ICgpID0+IFVzZXJFdmVudDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZVZpc2l0VXNlckV2ZW50OiAoeyB2YXJpYW50SW5mbywgfToge1xuICAgIHZhcmlhbnRJbmZvOiBWYXJpYW50SW5mbztcbn0pID0+IFVzZXJFdmVudCB8IHVuZGVmaW5lZDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzV2l0aGluQnVzaW5lc3NIb3VyczogKHN0YXJ0VGltZTogc3RyaW5nLCBlbmRUaW1lOiBzdHJpbmcsIHRpbWVab25lOiBzdHJpbmcpID0+IGJvb2xlYW47XG5leHBvcnQgZGVjbGFyZSBlbnVtIFNlYXJjaFJlc3VsdHNTdGF0ZSB7XG4gICAgTG9hZGluZyA9IDAsXG4gICAgUmVzdWx0cyA9IDEsXG4gICAgTm9SZXN1bHRzID0gMlxufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgZ2V0U2VhcmNoUmVzdWx0c1N0YXRlOiAoaXNMb2FkaW5nU2VhcmNoOiBib29sZWFuLCBzZWFyY2hEYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsKSA9PiBTZWFyY2hSZXN1bHRzU3RhdGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsSUFBVyw0QkFBNEIsQ0FBQyxTQUFTLGVBQWU7QUFDaEUsSUFBVyx1QkFBdUIsQ0FBQyxTQUFTLFVBQVU7QUFDdEQsSUFBVyx1QkFBdUI7Q0FBQztPQUFTO09BQWtCO09BQUE7Q0FBQTtBQUM5RCxJQUFXLHdCQUFpQixDQUFBLEVBQUE7QUFDNUIsSUFBVyxxQkFBZ0IsQ0FBQSxFQUFBO0FBQzNCLElBQVcsd0JBQXdCO0NBQUM7T0FBUztPQUFvQjtDQUFtQiJ9
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaG9va3MvdXRpbHMuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZWFyY2hSZXN1bHQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL2FwaS9zZWFyY2gnO1xuaW1wb3J0IHsgVXNlckV2ZW50LCBWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgaXNFbGVtZW50UGFydGlhbGx5VmlzaWJsZTogKGVsPzogSFRNTERpdkVsZW1lbnQgfCBudWxsKSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgY3JlYXRlQXBwTG9hZGVkRXZlbnQ6ICgpID0+IFVzZXJFdmVudDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGNyZWF0ZVZpc2l0VXNlckV2ZW50OiAoeyB2YXJpYW50SW5mbywgfToge1xuICAgIHZhcmlhbnRJbmZvOiBWYXJpYW50SW5mbztcbn0pID0+IFVzZXJFdmVudCB8IHVuZGVmaW5lZDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzV2l0aGluQnVzaW5lc3NIb3VyczogKHN0YXJ0VGltZTogc3RyaW5nLCBlbmRUaW1lOiBzdHJpbmcsIHRpbWVab25lOiBzdHJpbmcpID0+IGJvb2xlYW47XG5leHBvcnQgZGVjbGFyZSBlbnVtIFNlYXJjaFJlc3VsdHNTdGF0ZSB7XG4gICAgTG9hZGluZyA9IDAsXG4gICAgUmVzdWx0cyA9IDEsXG4gICAgTm9SZXN1bHRzID0gMlxufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgZ2V0U2VhcmNoUmVzdWx0c1N0YXRlOiAoaXNMb2FkaW5nU2VhcmNoOiBib29sZWFuLCBzZWFyY2hEYXRhOiBTZWFyY2hSZXN1bHQgfCBudWxsKSA9PiBTZWFyY2hSZXN1bHRzU3RhdGU7XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBRUEsSUFBVyw0QkFBNEIsQ0FBQyxTQUFTLGVBQWU7QUFDaEUsSUFBVyx1QkFBdUIsQ0FBQyxTQUFTLFVBQVU7QUFDdEQsSUFBVyx1QkFBdUI7Q0FBQztPQUFVO09BQWlCO09BQUE7Q0FBQTtBQUM5RCxJQUFXLHdCQUFpQixDQUFBLEdBQUE7QUFDNUIsSUFBVyxxQkFBZ0IsQ0FBQSxHQUFBO0FBQzNCLElBQVcsd0JBQXdCO0NBQUM7T0FBVTtPQUFvQjtDQUFtQiJ9
@@ -11,6 +11,7 @@ const require_ga4ProjectionService = require('../ga4ProjectionService/ga4Project
11
11
  let __amplitude_analytics_browser = require("@amplitude/analytics-browser");
12
12
 
13
13
  //#region src/services/amplitudeService/amplitudeService.ts
14
+ const logger = new require_logger.default("amplitudeService");
14
15
  var AmplitudeService = class AmplitudeService {
15
16
  constructor(config) {
16
17
  this.supplementalDefaultProps = {};
@@ -115,10 +116,13 @@ var AmplitudeService = class AmplitudeService {
115
116
  this.internalEventTrackingEnrichment = enrichment;
116
117
  return enrichment;
117
118
  }
119
+ static isValidAmplitudeApiKey(apiKey) {
120
+ return /^[0-9a-f]{32}$/i.test(apiKey);
121
+ }
118
122
  initialize() {
119
123
  const isReady = Boolean(this.config.userId && this.config.featureFlagService && this.config.amplitudeApiKey);
120
124
  if (!isReady) {
121
- require_logger.default.logDebug("AmplitudeService is not ready", {
125
+ logger.logDebug("AmplitudeService is not ready", {
122
126
  isReady,
123
127
  userId: this.config.userId,
124
128
  hasFeatureFlagService: !!this.config.featureFlagService,
@@ -126,6 +130,10 @@ var AmplitudeService = class AmplitudeService {
126
130
  });
127
131
  return;
128
132
  }
133
+ if (!AmplitudeService.isValidAmplitudeApiKey(this.config.amplitudeApiKey)) {
134
+ logger.logDebug("AmplitudeService is assuming a mock API key is in use — no calls will be made to the Amplitude API");
135
+ return;
136
+ }
129
137
  if (!this.amplitudeClient) {
130
138
  const currentAmplitudeInstance = (0, __amplitude_analytics_browser.createInstance)();
131
139
  currentAmplitudeInstance.add(this.getEventTrackingEnrichment());
@@ -211,11 +219,11 @@ var AmplitudeService = class AmplitudeService {
211
219
  return `[Spiffy] ${eventName}`;
212
220
  }
213
221
  async trackEvent({ eventName, eventProps, eventGroups, alsoSendToGoogleAnalytics = false }) {
214
- require_logger.default.logDebug("Submitting event", eventName);
222
+ logger.logDebug("Submitting event", eventName);
215
223
  try {
216
224
  const decoratedEventName = AmplitudeService.decorateEventName(eventName);
217
225
  if (!this.amplitudeClient) {
218
- require_logger.default.logWarn("amplitude client undefined", void 0, { event_name: decoratedEventName });
226
+ logger.logWarn("amplitude client undefined", void 0, { event_name: decoratedEventName });
219
227
  return;
220
228
  }
221
229
  const mappedEventProps = AmplitudeService.mapEventProps({
@@ -230,7 +238,7 @@ var AmplitudeService = class AmplitudeService {
230
238
  const data = new TextEncoder().encode(eventData);
231
239
  const hashBuffer = await crypto.subtle.digest("SHA-256", data);
232
240
  const currentInsertId = Array.from(new Uint8Array(hashBuffer)).map((b) => b.toString(16).padStart(2, "0")).join("");
233
- require_logger.default.logDebug(`amplitude tracking ${decoratedEventName}`, null, {
241
+ logger.logDebug(`amplitude tracking ${decoratedEventName}`, null, {
234
242
  event_name: decoratedEventName,
235
243
  props: mappedEventProps
236
244
  });
@@ -247,14 +255,14 @@ var AmplitudeService = class AmplitudeService {
247
255
  ...mappedEventProps
248
256
  });
249
257
  else if (alsoSendToGoogleAnalytics && this.config.orgGaConfig) {
250
- require_logger.default.logDebug("[spiffy-ai] GA tracking", decoratedEventName);
258
+ logger.logDebug("GA tracking", decoratedEventName);
251
259
  if (typeof window !== "undefined" && window.dataLayer) window.dataLayer.push({
252
260
  event: decoratedEventName,
253
261
  eventProps
254
262
  });
255
263
  }
256
264
  } catch (err) {
257
- require_logger.default.logError("[spiffy-ai] Error tracking event", err, {
265
+ logger.logError("Error tracking event", err, {
258
266
  eventName,
259
267
  eventProps
260
268
  });
@@ -267,4 +275,4 @@ var AmplitudeService = class AmplitudeService {
267
275
 
268
276
  //#endregion
269
277
  exports.AmplitudeService = AmplitudeService;
270
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlU2VydmljZS5janMiLCJuYW1lcyI6WyJMb2NhbFN0b3JhZ2VLZXlzIiwiZW5yaWNobWVudDogRW5yaWNobWVudFBsdWdpbiIsImVucmljaGVkRXZlbnQ6IEV2ZW50IiwiU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSIsImdsb2JhbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4iLCJTcGlmZnlFdmVudCIsImN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZTogQnJvd3NlckNsaWVudCIsIldpZGdldFR5cGVWMyIsIkNoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMiLCJFbnZpdmVNZXRyaWNzRXZlbnROYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2FtcGxpdHVkZVNlcnZpY2UvYW1wbGl0dWRlU2VydmljZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVJbnN0YW5jZSB9IGZyb20gJ0BhbXBsaXR1ZGUvYW5hbHl0aWNzLWJyb3dzZXInO1xuaW1wb3J0IHsgRXZlbnRzRGlzcGF0Y2hlciwgU3BpZmZ5RXZlbnQgfSBmcm9tICdzcmMvZXZlbnRzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZUtleXMgfSBmcm9tICdzcmMvY29udGV4dHMvbG9jYWxTdG9yYWdlQ29udGV4dCc7XG5pbXBvcnQgTG9nZ2VyIGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlcic7XG5pbXBvcnQgdHlwZSB7XG4gIEJyb3dzZXJDbGllbnQsXG4gIEVucmljaG1lbnRQbHVnaW4sXG4gIEV2ZW50LFxuICBTZXJ2ZXJab25lVHlwZSxcbn0gZnJvbSAnQGFtcGxpdHVkZS9hbmFseXRpY3MtdHlwZXMnO1xuaW1wb3J0IHsgRmVhdHVyZUZsYWdTZXJ2aWNlIH0gZnJvbSAnc3JjL2NvbnRleHRzL2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dCc7XG5pbXBvcnQgeyBXaWRnZXRUeXBlVjMgfSBmcm9tICdzcmMvY29udGV4dHMvdHlwZXNWMyc7XG5pbXBvcnQgeyBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9jaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzJztcbmltcG9ydCB7IHByb2plY3RUb0dBNCB9IGZyb20gJy4uL2dhNFByb2plY3Rpb25TZXJ2aWNlL2dhNFByb2plY3Rpb25TZXJ2aWNlJztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuL2V2ZW50TmFtZXMnO1xuXG4vLyBSZS1leHBvcnQgZXZlbnQgbmFtZXMgZm9yIGNvbnZlbmllbmNlXG5leHBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIH07XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhY2tFdmVudFBhcmFtcyB7XG4gIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWU7XG4gIGV2ZW50UHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgZXZlbnRHcm91cHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgYWxzb1NlbmRUb0dvb2dsZUFuYWx5dGljcz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQW1wbGl0dWRlU2VydmljZUNvbmZpZyB7XG4gIHVzZXJJZDogc3RyaW5nO1xuICBhbXBsaXR1ZGVBcGlLZXk6IHN0cmluZztcbiAgZGF0YVJlc2lkZW5jeTogc3RyaW5nO1xuICBlbnY6IHN0cmluZztcbiAgY29udGV4dFNvdXJjZTogc3RyaW5nO1xuICBvcmdTaG9ydE5hbWU6IHN0cmluZztcbiAgb3JnSWQ6IHN0cmluZztcbiAgZmVhdHVyZUZsYWdTZXJ2aWNlOiBGZWF0dXJlRmxhZ1NlcnZpY2U7XG4gIG9yZ0dhQ29uZmlnPzogdW5rbm93bjtcbiAgc2hvdzogYm9vbGVhbjtcbiAgZW52aXZlT246IGJvb2xlYW47XG4gIGVuYWJsZWRGZWF0dXJlcz86IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuICBnZXRMb2NhbFN0b3JhZ2VJdGVtOiBudWxsIHwgKChrZXk6IHN0cmluZykgPT4gc3RyaW5nIHwgbnVsbCk7XG59XG5cbmV4cG9ydCBjbGFzcyBBbXBsaXR1ZGVTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBhbXBsaXR1ZGVDbGllbnQ6IEJyb3dzZXJDbGllbnQgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBpbnRlcm5hbEV2ZW50VHJhY2tpbmdFbnJpY2htZW50OiBFbnJpY2htZW50UGx1Z2luIHwgdW5kZWZpbmVkO1xuXG4gIHByaXZhdGUgc3VwcGxlbWVudGFsRGVmYXVsdFByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9O1xuXG4gIHByaXZhdGUgY29uZmlnOiBBbXBsaXR1ZGVTZXJ2aWNlQ29uZmlnO1xuXG4gIGNvbnN0cnVjdG9yKGNvbmZpZzogQW1wbGl0dWRlU2VydmljZUNvbmZpZykge1xuICAgIHRoaXMuY29uZmlnID0gY29uZmlnO1xuICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xuICB9XG5cbiAgZ2V0IGlzUmVhZHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEJvb2xlYW4oXG4gICAgICB0aGlzLmNvbmZpZy51c2VySWQgJiZcbiAgICAgIHRoaXMuY29uZmlnLmZlYXR1cmVGbGFnU2VydmljZSAmJlxuICAgICAgdGhpcy5jb25maWcuYW1wbGl0dWRlQXBpS2V5ICYmXG4gICAgICB0aGlzLmFtcGxpdHVkZUNsaWVudCxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRMb2NhbFN0b3JhZ2VJdGVtKGtleTogc3RyaW5nKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgaWYgKHRoaXMuY29uZmlnLmdldExvY2FsU3RvcmFnZUl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZy5nZXRMb2NhbFN0b3JhZ2VJdGVtKGtleSk7XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cubG9jYWxTdG9yYWdlKSB7XG4gICAgICByZXR1cm4gd2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREZWZhdWx0VHJhY2tpbmdQcm9wcyhcbiAgICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLFxuICApOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgY29uc3QgZmVhdHVyZUdhdGVzID0gT2JqZWN0LmVudHJpZXModGhpcy5jb25maWcuZmVhdHVyZUZsYWdTZXJ2aWNlLmdldEZlYXR1cmVGbGFncygpKTtcbiAgICBjb25zdCBnYXRlc1Byb3BzID1cbiAgICAgIGZlYXR1cmVHYXRlcy5sZW5ndGggPiAwXG4gICAgICAgID8gZmVhdHVyZUdhdGVzLnJlZHVjZTxSZWNvcmQ8c3RyaW5nLCBib29sZWFuPj4oKGFjYywgW25hbWUsIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgaWYgKG5hbWUgJiYgdmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgICByZXR1cm4geyAuLi5hY2MsIFtgZmVhdHVyZV9nYXRlLiR7bmFtZX1gXTogdmFsdWUgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBhY2M7XG4gICAgICAgICAgfSwge30pXG4gICAgICAgIDoge307XG4gICAgY29uc3QgZXhwZXJpbWVudFByb3BzID0ge307IC8vIE5vIGRpcmVjdCBlcXVpdmFsZW50IGZvciBleHBlcmltZW50cyBpbiBFbnZpdmVDb25maWcgeWV0XG5cbiAgICBjb25zdCBlbnZpcm9ubWVudFByb3BzID0ge1xuICAgICAgJ2Vudmlyb25tZW50LmV4ZWN1dGlvbl9jb250ZXh0JzogJ2J1bmRsZScsXG4gICAgICAnZW52aXJvbm1lbnQucGFnZV91cmwnOiB3aW5kb3cubG9jYXRpb24uaHJlZixcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfdXNlcl9pZCc6IHRoaXMuY29uZmlnLnVzZXJJZCxcbiAgICAgICdlbnZpcm9ubWVudC5leGVjdXRpb25fZW52aXJvbm1lbnQnOiB0aGlzLmNvbmZpZy5lbnYgfHwgJ3Vua25vd24nLFxuICAgICAgJ2Vudmlyb25tZW50LmNvbnRleHRfc291cmNlJzogdGhpcy5jb25maWcuY29udGV4dFNvdXJjZSxcbiAgICAgICdlbnZpcm9ubWVudC5zYWxlc19hZ2VudF9lbmFibGVkJzogdGhpcy5jb25maWcuZW5hYmxlZEZlYXR1cmVzPy5zYWxlc0FnZW50ID8/IGZhbHNlLFxuICAgICAgJ2Vudmlyb25tZW50LnNlYXJjaF9lbmFibGVkJzogdGhpcy5jb25maWcuZW5hYmxlZEZlYXR1cmVzPy5zZWFyY2hBZ2VudCA/PyBmYWxzZSxcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfb25fcXVlcnlfcGFyYW0nOiB0aGlzLmNvbmZpZy5lbnZpdmVPbixcbiAgICAgICdlbnZpcm9ubWVudC53aW5kb3dfc2hvdyc6IHRoaXMuY29uZmlnLnNob3csXG4gICAgICAnZW52aXJvbm1lbnQuZW52aXZlX2VuYWJsZWQnOiB0aGlzLmNvbmZpZy5lbmFibGVkRmVhdHVyZXM/LmVudml2ZSxcbiAgICB9O1xuXG4gICAgY29uc3Qgb3JnTGV2ZWxBbXBsaXR1ZGVUcmFja2luZ1Byb3BzID0gQW1wbGl0dWRlU2VydmljZS5pc1YzRW52aXZlRXZlbnQoZXZlbnROYW1lKVxuICAgICAgPyB7XG4gICAgICAgICAgLi4udGhpcy5jb25maWcuZmVhdHVyZUZsYWdTZXJ2aWNlLmdldEZ1bGxGbGFnVmFsdWVzKCksXG4gICAgICAgICAgLi4uZXhwZXJpbWVudFByb3BzLFxuICAgICAgICAgIC4uLmVudmlyb25tZW50UHJvcHMsXG4gICAgICAgIH1cbiAgICAgIDoge1xuICAgICAgICAgIC4uLmdhdGVzUHJvcHMsXG4gICAgICAgICAgLi4uZXhwZXJpbWVudFByb3BzLFxuICAgICAgICB9O1xuICAgIHJldHVybiB7XG4gICAgICAuLi5vcmdMZXZlbEFtcGxpdHVkZVRyYWNraW5nUHJvcHMsXG4gICAgICAuLi50aGlzLnN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcyxcbiAgICAgIGFwcF9pZDogJ2NvbW1lcmNlLWNoYXQtcmVhY3QtY29tcG9uZW50JyxcbiAgICAgIGNoYXRfaWQ6IHRoaXMuZ2V0TG9jYWxTdG9yYWdlSXRlbShMb2NhbFN0b3JhZ2VLZXlzLkNoYXRJZCksXG4gICAgICBlbnY6IHRoaXMuY29uZmlnLmVudiB8fCAndW5rbm93bicsXG4gICAgICBhcHBfc291cmNlOiB0aGlzLmNvbmZpZy5jb250ZXh0U291cmNlLFxuICAgICAgb3JnX2lkOiB0aGlzLmNvbmZpZy5vcmdJZCxcbiAgICAgICdvcmcuc2hvcnRfbmFtZSc6IHRoaXMuY29uZmlnLm9yZ1Nob3J0TmFtZSxcbiAgICAgICd1c2VyLmlkJzogdGhpcy5jb25maWcudXNlcklkLFxuICAgICAgJ2NkcC51c2VyX2lkJzogbnVsbCxcbiAgICAgICdjZHAucHJvdmlkZXInOiBudWxsLFxuICAgICAgJ2V2ZW50LnNvdXJjZSc6ICd3ZWItYnJvd3NlcicsXG4gICAgICAnZXZlbnQudHlwZSc6ICd1c2VyLWFjdGl2aXR5JyxcbiAgICAgICdldmVudC5pZCc6IG51bGwsXG4gICAgICAnZXZlbnQuY2hhbm5lbCc6ICd3ZWInLFxuICAgICAgJ2V2ZW50LnRpbWVzdGFtcCc6IG51bGwsXG4gICAgfTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzXG4gIHByaXZhdGUgZXZlbnRQcm9wc1RvUHJlZml4ZWRFdmVudFByb3BzKFxuICAgIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsXG4gICAgZXZlbnRQcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgICBjb25zdCBwcmVmaXggPSBldmVudE5hbWUudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9cXHMrL2csICdfJyk7XG4gICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGV2ZW50UHJvcHMpLnJlZHVjZShcbiAgICAgIChhY2MsIFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICBhY2NbYCR7cHJlZml4fS4ke2tleX1gXSA9IHZhbHVlO1xuICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgfSxcbiAgICAgIHt9IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldEV2ZW50VHJhY2tpbmdFbnJpY2htZW50KCk6IEVucmljaG1lbnRQbHVnaW4ge1xuICAgIGlmICh0aGlzLmludGVybmFsRXZlbnRUcmFja2luZ0VucmljaG1lbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHRoaXMuaW50ZXJuYWxFdmVudFRyYWNraW5nRW5yaWNobWVudDtcbiAgICB9XG5cbiAgICBjb25zdCBlbnJpY2htZW50OiBFbnJpY2htZW50UGx1Z2luID0ge1xuICAgICAgbmFtZTogJ3BhZ2Utdmlldy10cmFja2luZy1lbnJpY2htZW50JyxcbiAgICAgIHR5cGU6ICdlbnJpY2htZW50JyxcbiAgICAgIHNldHVwOiBhc3luYyAoKSA9PiB1bmRlZmluZWQsXG4gICAgICBleGVjdXRlOiBhc3luYyAoZXZlbnQ6IEV2ZW50KTogUHJvbWlzZTxFdmVudD4gPT4ge1xuICAgICAgICBsZXQgZW5yaWNoZWRFdmVudDogRXZlbnQ7XG5cbiAgICAgICAgY29uc3QgZXZlbnRzVG9FbnJpY2ggPSBbXG4gICAgICAgICAgJ1tBbXBsaXR1ZGVdIFBhZ2UgVmlld2VkJyxcbiAgICAgICAgICBgW1NwaWZmeV0gJHtTcGlmZnlNZXRyaWNzRXZlbnROYW1lLkJ1bmRsZUxvYWRlZH1gLFxuICAgICAgICBdO1xuXG4gICAgICAgIGlmIChldmVudHNUb0VucmljaC5pbmNsdWRlcyhldmVudC5ldmVudF90eXBlKSkge1xuICAgICAgICAgIGNvbnN0IGdsb2JhbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcblxuICAgICAgICAgIGlmICh0aGlzLmNvbmZpZy5zaG93ICE9IG51bGwpIHtcbiAgICAgICAgICAgIGdsb2JhbFByb3BlcnRpZXNbJ2dsb2JhbFByb3BlcnRpZXMuc2hvdyddID0gU3RyaW5nKHRoaXMuY29uZmlnLnNob3cpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBnbG9iYWxQcm9wZXJ0aWVzWydnbG9iYWxQcm9wZXJ0aWVzLmVudiddID0gU3RyaW5nKHRoaXMuY29uZmlnLmVudik7XG5cbiAgICAgICAgICBjb25zdCBlbmFibGVkRmVhdHVyZXNQcm9wZXJ0aWVzID0gT2JqZWN0LmVudHJpZXMoXG4gICAgICAgICAgICB0aGlzLmNvbmZpZz8uZW5hYmxlZEZlYXR1cmVzID8/ICh7fSBhcyBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiksXG4gICAgICAgICAgKS5yZWR1Y2U8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4oXG4gICAgICAgICAgICAoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7XG4gICAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgICAgW2BlbmFibGVkRmVhdHVyZXMuJHtrZXl9YF06IGAke3ZhbHVlfWAsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9LFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBjb25zdCB0aW1pbmdQcm9wZXJ0aWVzID0ge1xuICAgICAgICAgICAgJ3RpbWluZy5lbnJpY2hlZF9hdF9tcyc6XG4gICAgICAgICAgICAgIHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnID8gd2luZG93LnBlcmZvcm1hbmNlPy5ub3coKSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICB9O1xuXG4gICAgICAgICAgZW5yaWNoZWRFdmVudCA9IHtcbiAgICAgICAgICAgIC4uLmV2ZW50LFxuICAgICAgICAgICAgZXZlbnRfcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAuLi5ldmVudC5ldmVudF9wcm9wZXJ0aWVzLFxuICAgICAgICAgICAgICAuLi50aGlzLmdldERlZmF1bHRUcmFja2luZ1Byb3BzKFxuICAgICAgICAgICAgICAgIGV2ZW50LmV2ZW50X3R5cGUgYXMgU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgIC4uLmdsb2JhbFByb3BlcnRpZXMsXG4gICAgICAgICAgICAgIC4uLmVuYWJsZWRGZWF0dXJlc1Byb3BlcnRpZXMsXG4gICAgICAgICAgICAgIC4uLnRpbWluZ1Byb3BlcnRpZXMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZW5yaWNoZWRFdmVudCA9IGV2ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgRXZlbnRzRGlzcGF0Y2hlci5kaXNwYXRjaChTcGlmZnlFdmVudC5BTVBMSVRVREVfRVZFTlQsIGVucmljaGVkRXZlbnQpO1xuXG4gICAgICAgIHJldHVybiBlbnJpY2hlZEV2ZW50O1xuICAgICAgfSxcbiAgICB9O1xuICAgIHRoaXMuaW50ZXJuYWxFdmVudFRyYWNraW5nRW5yaWNobWVudCA9IGVucmljaG1lbnQ7XG4gICAgcmV0dXJuIGVucmljaG1lbnQ7XG4gIH1cblxuICBwcml2YXRlIGluaXRpYWxpemUoKTogdm9pZCB7XG4gICAgY29uc3QgaXNSZWFkeSA9IEJvb2xlYW4oXG4gICAgICB0aGlzLmNvbmZpZy51c2VySWQgJiYgdGhpcy5jb25maWcuZmVhdHVyZUZsYWdTZXJ2aWNlICYmIHRoaXMuY29uZmlnLmFtcGxpdHVkZUFwaUtleSxcbiAgICApO1xuXG4gICAgaWYgKCFpc1JlYWR5KSB7XG4gICAgICBMb2dnZXIubG9nRGVidWcoJ0FtcGxpdHVkZVNlcnZpY2UgaXMgbm90IHJlYWR5Jywge1xuICAgICAgICBpc1JlYWR5LFxuICAgICAgICB1c2VySWQ6IHRoaXMuY29uZmlnLnVzZXJJZCxcbiAgICAgICAgaGFzRmVhdHVyZUZsYWdTZXJ2aWNlOiAhIXRoaXMuY29uZmlnLmZlYXR1cmVGbGFnU2VydmljZSxcbiAgICAgICAgaGFzQW1wbGl0dWRlQXBpS2V5OiAhIXRoaXMuY29uZmlnLmFtcGxpdHVkZUFwaUtleSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5hbXBsaXR1ZGVDbGllbnQpIHtcbiAgICAgIGNvbnN0IGN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZTogQnJvd3NlckNsaWVudCA9IGNyZWF0ZUluc3RhbmNlKCk7XG5cbiAgICAgIGN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZS5hZGQodGhpcy5nZXRFdmVudFRyYWNraW5nRW5yaWNobWVudCgpKTtcbiAgICAgIGN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZS5pbml0KHRoaXMuY29uZmlnLmFtcGxpdHVkZUFwaUtleSwgdGhpcy5jb25maWcudXNlcklkLCB7XG4gICAgICAgIHNlcnZlclpvbmU6IHRoaXMuY29uZmlnLmRhdGFSZXNpZGVuY3kgYXMgU2VydmVyWm9uZVR5cGUsXG4gICAgICAgIHRyYWNraW5nT3B0aW9uczoge1xuICAgICAgICAgIGlwQWRkcmVzczogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgYXV0b2NhcHR1cmU6IHtcbiAgICAgICAgICBhdHRyaWJ1dGlvbjogdHJ1ZSxcbiAgICAgICAgICBwYWdlVmlld3M6IHtcbiAgICAgICAgICAgIHRyYWNrSGlzdG9yeUNoYW5nZXM6ICdwYXRoT25seScsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXNzaW9uczogZmFsc2UsXG4gICAgICAgICAgZm9ybUludGVyYWN0aW9uczogZmFsc2UsXG4gICAgICAgICAgZmlsZURvd25sb2FkczogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHRoaXMuYW1wbGl0dWRlQ2xpZW50ID0gY3VycmVudEFtcGxpdHVkZUluc3RhbmNlO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBtYXBXaWRnZXRUeXBlVG9DaGF0Q29tcG9uZW50KHdpZGdldFR5cGU6IHVua25vd24pOiBzdHJpbmcge1xuICAgIHN3aXRjaCAod2lkZ2V0VHlwZSkge1xuICAgICAgY2FzZSBXaWRnZXRUeXBlVjMuRmxvYXRpbmdCdXR0b25WMzpcbiAgICAgICAgcmV0dXJuICdmbG9hdGluZ19idXR0b24nO1xuICAgICAgY2FzZSBXaWRnZXRUeXBlVjMuQ2hhdFByZXZpZXdWMzpcbiAgICAgIGNhc2UgV2lkZ2V0VHlwZVYzLlNvY2lhbFByb29mVjM6XG4gICAgICAgIHJldHVybiAnZW1iZWRkZWRfd2lkZ2V0JztcbiAgICAgIGNhc2UgV2lkZ2V0VHlwZVYzLlRpdGxlZFByb21wdENhcm91c2VsVjM6XG4gICAgICBjYXNlIFdpZGdldFR5cGVWMy5Qcm9tcHRDYXJvdXNlbFYzOlxuICAgICAgICByZXR1cm4gJ3N1Z2dlc3Rpb25fYmFyJztcbiAgICAgIGNhc2UgV2lkZ2V0VHlwZVYzLlByb2R1Y3RDYXJkVjM6XG4gICAgICAgIHJldHVybiAnaW1hZ2VfcHJvbXB0X2NhcmQnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuICd1bmtub3duJztcbiAgICB9XG4gIH1cblxuICBzdGF0aWMgbWFwVHJpZ2dlckxvY2F0aW9uVG9DaGF0Q29tcG9uZW50KHRyaWdnZXJMb2NhdGlvbjogdW5rbm93bik6IHN0cmluZyB7XG4gICAgc3dpdGNoICh0cmlnZ2VyTG9jYXRpb24pIHtcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5QUk9EVUNUX0NBUkRfUFJPTVBUX0JVVFRPTjpcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5QUk9EVUNUX0NBUkRfVEVYVF9GSUVMRDpcbiAgICAgICAgcmV0dXJuICdwcm9tcHRfY2FyZCc7XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuUFJPTVBUX0NBUk9VU0VMOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLlRJVExFRF9QUk9NUFRfQ0FST1VTRUw6XG4gICAgICAgIHJldHVybiAndG9wX3Jldmlld3Nfc25pcHBldCc7XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuVFlQSU5HX0FOSU1BVElPTjpcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5TT0NJQUxfUFJPT0ZfUFJJTUFSWV9CVVRUT046XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuU09DSUFMX1BST09GX1NFQ09OREFSWV9CVVRUT046XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuU09DSUFMX1BST09GX1RFWFRfRklFTEQ6XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuQ0hBVF9QUkVWSUVXX0NPTVBBUklTT05fUFJPTVBUX0JVVFRPTjpcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5DSEFUX1BSRVZJRVdfQ09NUEFSSVNPTl9URVhUX0ZJRUxEOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLkNIQVRfUFJFVklFV19QUk9NUFRfQlVUVE9OOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLkNIQVRfUFJFVklFV19URVhUX0ZJRUxEOlxuICAgICAgICByZXR1cm4gJ2NoYXRfcHJldmlldyc7XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuRkxPQVRJTkdfQ0hBVF9PVkVSTEFZOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLkZMT0FUSU5HX0NIQVRfQ0xPU0VfQlVUVE9OOlxuICAgICAgICByZXR1cm4gJ2luX2NoYXQnO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHRyaWdnZXJMb2NhdGlvbiBhcyBzdHJpbmc7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyBhbGxvd3MgdXMgdG8gbWFwIHRoZSBldmVudCBwcm9wcyB0byB0aGUgY29ycmVjdCBmb3JtYXQgZm9yIHRoZSBsZWdhY3kgYW1wbGl0dWRlIGV2ZW50c1xuICBzdGF0aWMgbWFwRXZlbnRQcm9wcyh7IGV2ZW50TmFtZSwgZXZlbnRQcm9wcyB9OiBUcmFja0V2ZW50UGFyYW1zKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIGNvbnN0IG1lc3NhZ2VNZXRhZGF0YSA9IGV2ZW50UHJvcHM/Lm1lc3NhZ2VfbWV0YWRhdGEgPz8ge307XG4gICAgY29uc3QgdHJpZ2dlckxvY2F0aW9uID1cbiAgICAgIG1lc3NhZ2VNZXRhZGF0YSAhPT0gbnVsbCAmJlxuICAgICAgdHlwZW9mIG1lc3NhZ2VNZXRhZGF0YSA9PT0gJ29iamVjdCcgJiZcbiAgICAgICd0cmlnZ2VyX2xvY2F0aW9uJyBpbiBtZXNzYWdlTWV0YWRhdGFcbiAgICAgICAgPyBtZXNzYWdlTWV0YWRhdGEudHJpZ2dlcl9sb2NhdGlvblxuICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIGlmIChldmVudE5hbWUgPT09IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUuQ2hhdENvbXBvbmVudEV4cGFuZGVkKSB7XG4gICAgICBjb25zdCBtYXBwZWRUcmlnZ2VyTG9jY2F0aW9uID1cbiAgICAgICAgQW1wbGl0dWRlU2VydmljZS5tYXBUcmlnZ2VyTG9jYXRpb25Ub0NoYXRDb21wb25lbnQodHJpZ2dlckxvY2F0aW9uKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgICAgIG1lc3NhZ2VfbWV0YWRhdGE6IHtcbiAgICAgICAgICAuLi5tZXNzYWdlTWV0YWRhdGEsXG4gICAgICAgICAgdHJpZ2dlcl9sb2NhdGlvbjogbWFwcGVkVHJpZ2dlckxvY2NhdGlvbixcbiAgICAgICAgICBmdWxsX3RyaWdnZXJfbG9jYXRpb246IHRyaWdnZXJMb2NhdGlvbixcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50VmlzaWJsZSkge1xuICAgICAgY29uc3QgbWFwcGVkV2lkZ2V0VHlwZSA9IEFtcGxpdHVkZVNlcnZpY2UubWFwV2lkZ2V0VHlwZVRvQ2hhdENvbXBvbmVudChcbiAgICAgICAgZXZlbnRQcm9wcz8ud2lkZ2V0X3R5cGUsXG4gICAgICApO1xuICAgICAgY29uc3QgbWFwcGVkVHJpZ2dlckxvY2NhdGlvbiA9XG4gICAgICAgIEFtcGxpdHVkZVNlcnZpY2UubWFwVHJpZ2dlckxvY2F0aW9uVG9DaGF0Q29tcG9uZW50KHRyaWdnZXJMb2NhdGlvbik7XG4gICAgICByZXR1cm4ge1xuICAgICAgICAuLi5ldmVudFByb3BzLFxuICAgICAgICBtZXNzYWdlX21ldGFkYXRhOiB7XG4gICAgICAgICAgLi4ubWVzc2FnZU1ldGFkYXRhLFxuICAgICAgICAgIHRyaWdnZXJfbG9jYXRpb246IG1hcHBlZFRyaWdnZXJMb2NjYXRpb24sXG4gICAgICAgICAgZnVsbF90cmlnZ2VyX2xvY2F0aW9uOiB0cmlnZ2VyTG9jYXRpb24sXG4gICAgICAgIH0sXG4gICAgICAgIGNoYXRfY29tcG9uZW50OiBtYXBwZWRXaWRnZXRUeXBlLFxuICAgICAgICAnY2hhdC5jb21wb25lbnRfdmlzaWJsZSc6IHRydWUsXG4gICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gZXZlbnRQcm9wcyA/PyB7fTtcbiAgfVxuXG4gIHN0YXRpYyBpc1YzRW52aXZlRXZlbnQoZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBPYmplY3QudmFsdWVzKEVudml2ZU1ldHJpY3NFdmVudE5hbWUpLmluY2x1ZGVzKGV2ZW50TmFtZSBhcyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lKTtcbiAgfVxuXG4gIHN0YXRpYyBkZWNvcmF0ZUV2ZW50TmFtZShldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lKTogc3RyaW5nIHtcbiAgICBpZiAoQW1wbGl0dWRlU2VydmljZS5pc1YzRW52aXZlRXZlbnQoZXZlbnROYW1lKSkge1xuICAgICAgcmV0dXJuIGBbRW52aXZlXSAke2V2ZW50TmFtZX1gO1xuICAgIH1cbiAgICByZXR1cm4gYFtTcGlmZnldICR7ZXZlbnROYW1lfWA7XG4gIH1cblxuICBhc3luYyB0cmFja0V2ZW50KHtcbiAgICBldmVudE5hbWUsXG4gICAgZXZlbnRQcm9wcyxcbiAgICBldmVudEdyb3VwcyxcbiAgICBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzID0gZmFsc2UsXG4gIH06IFRyYWNrRXZlbnRQYXJhbXMpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBMb2dnZXIubG9nRGVidWcoJ1N1Ym1pdHRpbmcgZXZlbnQnLCBldmVudE5hbWUpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBkZWNvcmF0ZWRFdmVudE5hbWUgPSBBbXBsaXR1ZGVTZXJ2aWNlLmRlY29yYXRlRXZlbnROYW1lKGV2ZW50TmFtZSk7XG5cbiAgICAgIGlmICghdGhpcy5hbXBsaXR1ZGVDbGllbnQpIHtcbiAgICAgICAgTG9nZ2VyLmxvZ1dhcm4oJ2FtcGxpdHVkZSBjbGllbnQgdW5kZWZpbmVkJywgdW5kZWZpbmVkLCB7XG4gICAgICAgICAgZXZlbnRfbmFtZTogZGVjb3JhdGVkRXZlbnROYW1lLFxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBtYXBwZWRFdmVudFByb3BzID0gQW1wbGl0dWRlU2VydmljZS5tYXBFdmVudFByb3BzKHsgZXZlbnROYW1lLCBldmVudFByb3BzIH0pO1xuXG4gICAgICBjb25zdCBldmVudERhdGEgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIGV2ZW50TmFtZSxcbiAgICAgICAgZXZlbnRQcm9wczogbWFwcGVkRXZlbnRQcm9wcyxcbiAgICAgICAgY3JlYXRlZF9hdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgfSk7XG4gICAgICBjb25zdCBlbmNvZGVyID0gbmV3IFRleHRFbmNvZGVyKCk7XG4gICAgICBjb25zdCBkYXRhID0gZW5jb2Rlci5lbmNvZGUoZXZlbnREYXRhKTtcbiAgICAgIC8vIGNhbGN1bGF0ZSBhIGhhc2ggb2YgdGhlIGV2ZW50IHByb3BlcnRpZXMgdG8gdXNlIGFzIHRoZSBpbnNlcnRfaWQgc28gdGhhdCBkdXBsaWNhdGUgZXZlbnRzXG4gICAgICAvLyBhcmUgYXV0b21hdGljYWxseSBkcm9wcGVkIGJ5IEFtcGxpdHVkZVxuICAgICAgY29uc3QgaGFzaEJ1ZmZlciA9IGF3YWl0IGNyeXB0by5zdWJ0bGUuZGlnZXN0KCdTSEEtMjU2JywgZGF0YSk7XG4gICAgICBjb25zdCBoYXNoQXJyYXkgPSBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGhhc2hCdWZmZXIpKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRJbnNlcnRJZCA9IGhhc2hBcnJheS5tYXAoYiA9PiBiLnRvU3RyaW5nKDE2KS5wYWRTdGFydCgyLCAnMCcpKS5qb2luKCcnKTtcblxuICAgICAgTG9nZ2VyLmxvZ0RlYnVnKGBhbXBsaXR1ZGUgdHJhY2tpbmcgJHtkZWNvcmF0ZWRFdmVudE5hbWV9YCwgbnVsbCwge1xuICAgICAgICBldmVudF9uYW1lOiBkZWNvcmF0ZWRFdmVudE5hbWUsXG4gICAgICAgIHByb3BzOiBtYXBwZWRFdmVudFByb3BzLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuYW1wbGl0dWRlQ2xpZW50LnRyYWNrKFxuICAgICAgICBkZWNvcmF0ZWRFdmVudE5hbWUsXG4gICAgICAgIHtcbiAgICAgICAgICAuLi50aGlzLmdldERlZmF1bHRUcmFja2luZ1Byb3BzKGV2ZW50TmFtZSksXG4gICAgICAgICAgLi4ubWFwcGVkRXZlbnRQcm9wcyxcbiAgICAgICAgICAuLi4obWFwcGVkRXZlbnRQcm9wc1xuICAgICAgICAgICAgPyB0aGlzLmV2ZW50UHJvcHNUb1ByZWZpeGVkRXZlbnRQcm9wcyhldmVudE5hbWUsIG1hcHBlZEV2ZW50UHJvcHMpXG4gICAgICAgICAgICA6IHt9KSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLmV2ZW50R3JvdXBzLFxuICAgICAgICAgIGluc2VydF9pZDogY3VycmVudEluc2VydElkLFxuICAgICAgICB9LFxuICAgICAgKTtcblxuICAgICAgaWYgKEFtcGxpdHVkZVNlcnZpY2UuaXNWM0Vudml2ZUV2ZW50KGV2ZW50TmFtZSkgJiYgdGhpcy5jb25maWcub3JnR2FDb25maWcpIHtcbiAgICAgICAgY29uc3QgbWVyZ2VkUHJvcHNGb3JHQTQgPSB7XG4gICAgICAgICAgLi4udGhpcy5nZXREZWZhdWx0VHJhY2tpbmdQcm9wcyhldmVudE5hbWUpLFxuICAgICAgICAgIC4uLm1hcHBlZEV2ZW50UHJvcHMsXG4gICAgICAgIH07XG4gICAgICAgIHByb2plY3RUb0dBNChldmVudE5hbWUgYXMgRW52aXZlTWV0cmljc0V2ZW50TmFtZSwgbWVyZ2VkUHJvcHNGb3JHQTQpO1xuICAgICAgfSBlbHNlIGlmIChhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzICYmIHRoaXMuY29uZmlnLm9yZ0dhQ29uZmlnKSB7XG4gICAgICAgIExvZ2dlci5sb2dEZWJ1ZygnW3NwaWZmeS1haV0gR0EgdHJhY2tpbmcnLCBkZWNvcmF0ZWRFdmVudE5hbWUpO1xuICAgICAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgd2luZG93LmRhdGFMYXllcikge1xuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG4gICAgICAgICAgKHdpbmRvdy5kYXRhTGF5ZXIgYXMgYW55W10pLnB1c2goe1xuICAgICAgICAgICAgZXZlbnQ6IGRlY29yYXRlZEV2ZW50TmFtZSxcbiAgICAgICAgICAgIGV2ZW50UHJvcHMsXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIExvZ2dlci5sb2dFcnJvcignW3NwaWZmeS1haV0gRXJyb3IgdHJhY2tpbmcgZXZlbnQnLCBlcnIsIHtcbiAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICBldmVudFByb3BzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRW5zdXJlIHRoYXQgc3VwcGxlbWVudGFsIGRlZmF1bHQgcHJvcHMgYXJlIG1lcmdlZCB3aXRoIHRoZSBleGlzdGluZyBwcm9wc1xuICBzZXRTdXBwbGVtZW50YWxEZWZhdWx0UHJvcHMocHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZCB7XG4gICAgdGhpcy5zdXBwbGVtZW50YWxEZWZhdWx0UHJvcHMgPSBwcm9wcztcbiAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBMENBLElBQWEsbUJBQWIsTUFBYSxpQkFBaUI7Q0FTNUIsWUFBWSxRQUFnQztrQ0FKZ0IsRUFBRTtBQUs1RCxPQUFLLFNBQVM7QUFDZCxPQUFLLFlBQVk7O0NBR25CLElBQUksVUFBbUI7QUFDckIsU0FBTyxRQUNMLEtBQUssT0FBTyxVQUNaLEtBQUssT0FBTyxzQkFDWixLQUFLLE9BQU8sbUJBQ1osS0FBSyxnQkFDTjs7Q0FHSCxBQUFRLG9CQUFvQixLQUE0QjtBQUN0RCxNQUFJLEtBQUssT0FBTyxvQkFDZCxRQUFPLEtBQUssT0FBTyxvQkFBb0IsSUFBSTtBQUU3QyxNQUFJLE9BQU8sV0FBVyxlQUFlLE9BQU8sYUFDMUMsUUFBTyxPQUFPLGFBQWEsUUFBUSxJQUFJO0FBRXpDLFNBQU87O0NBR1QsQUFBUSx3QkFDTixXQUN5QjtFQUN6QixNQUFNLGVBQWUsT0FBTyxRQUFRLEtBQUssT0FBTyxtQkFBbUIsaUJBQWlCLENBQUM7RUFDckYsTUFBTSxhQUNKLGFBQWEs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
278
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlU2VydmljZS5janMiLCJuYW1lcyI6WyJMb2dnZXIiLCJMb2NhbFN0b3JhZ2VLZXlzIiwiZW5yaWNobWVudDogRW5yaWNobWVudFBsdWdpbiIsImVucmljaGVkRXZlbnQ6IEV2ZW50IiwiU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSIsImdsb2JhbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4iLCJTcGlmZnlFdmVudCIsImN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZTogQnJvd3NlckNsaWVudCIsIldpZGdldFR5cGVWMyIsIkNoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMiLCJFbnZpdmVNZXRyaWNzRXZlbnROYW1lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZpY2VzL2FtcGxpdHVkZVNlcnZpY2UvYW1wbGl0dWRlU2VydmljZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVJbnN0YW5jZSB9IGZyb20gJ0BhbXBsaXR1ZGUvYW5hbHl0aWNzLWJyb3dzZXInO1xuaW1wb3J0IHsgRXZlbnRzRGlzcGF0Y2hlciwgU3BpZmZ5RXZlbnQgfSBmcm9tICdzcmMvZXZlbnRzJztcbmltcG9ydCB7IExvY2FsU3RvcmFnZUtleXMgfSBmcm9tICdzcmMvY29udGV4dHMvbG9jYWxTdG9yYWdlQ29udGV4dCc7XG5pbXBvcnQgTG9nZ2VyIGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlcic7XG5pbXBvcnQgdHlwZSB7XG4gIEJyb3dzZXJDbGllbnQsXG4gIEVucmljaG1lbnRQbHVnaW4sXG4gIEV2ZW50LFxuICBTZXJ2ZXJab25lVHlwZSxcbn0gZnJvbSAnQGFtcGxpdHVkZS9hbmFseXRpY3MtdHlwZXMnO1xuaW1wb3J0IHsgRmVhdHVyZUZsYWdTZXJ2aWNlIH0gZnJvbSAnc3JjL2NvbnRleHRzL2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dCc7XG5pbXBvcnQgeyBXaWRnZXRUeXBlVjMgfSBmcm9tICdzcmMvY29udGV4dHMvdHlwZXNWMyc7XG5pbXBvcnQgeyBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9jaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzJztcbmltcG9ydCB7IHByb2plY3RUb0dBNCB9IGZyb20gJy4uL2dhNFByb2plY3Rpb25TZXJ2aWNlL2dhNFByb2plY3Rpb25TZXJ2aWNlJztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuL2V2ZW50TmFtZXMnO1xuXG4vLyBSZS1leHBvcnQgZXZlbnQgbmFtZXMgZm9yIGNvbnZlbmllbmNlXG5leHBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIH07XG5cbmNvbnN0IGxvZ2dlciA9IG5ldyBMb2dnZXIoJ2FtcGxpdHVkZVNlcnZpY2UnKTtcblxuZXhwb3J0IGludGVyZmFjZSBUcmFja0V2ZW50UGFyYW1zIHtcbiAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZTtcbiAgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBldmVudEdyb3Vwcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBbXBsaXR1ZGVTZXJ2aWNlQ29uZmlnIHtcbiAgdXNlcklkOiBzdHJpbmc7XG4gIGFtcGxpdHVkZUFwaUtleTogc3RyaW5nO1xuICBkYXRhUmVzaWRlbmN5OiBzdHJpbmc7XG4gIGVudjogc3RyaW5nO1xuICBjb250ZXh0U291cmNlOiBzdHJpbmc7XG4gIG9yZ1Nob3J0TmFtZTogc3RyaW5nO1xuICBvcmdJZDogc3RyaW5nO1xuICBmZWF0dXJlRmxhZ1NlcnZpY2U6IEZlYXR1cmVGbGFnU2VydmljZTtcbiAgb3JnR2FDb25maWc/OiB1bmtub3duO1xuICBzaG93OiBib29sZWFuO1xuICBlbnZpdmVPbjogYm9vbGVhbjtcbiAgZW5hYmxlZEZlYXR1cmVzPzogUmVjb3JkPHN0cmluZywgYm9vbGVhbj47XG4gIGdldExvY2FsU3RvcmFnZUl0ZW06IG51bGwgfCAoKGtleTogc3RyaW5nKSA9PiBzdHJpbmcgfCBudWxsKTtcbn1cblxuZXhwb3J0IGNsYXNzIEFtcGxpdHVkZVNlcnZpY2Uge1xuICBwcml2YXRlIGFtcGxpdHVkZUNsaWVudDogQnJvd3NlckNsaWVudCB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIGludGVybmFsRXZlbnRUcmFja2luZ0VucmljaG1lbnQ6IEVucmljaG1lbnRQbHVnaW4gfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBzdXBwbGVtZW50YWxEZWZhdWx0UHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge307XG5cbiAgcHJpdmF0ZSBjb25maWc6IEFtcGxpdHVkZVNlcnZpY2VDb25maWc7XG5cbiAgY29uc3RydWN0b3IoY29uZmlnOiBBbXBsaXR1ZGVTZXJ2aWNlQ29uZmlnKSB7XG4gICAgdGhpcy5jb25maWcgPSBjb25maWc7XG4gICAgdGhpcy5pbml0aWFsaXplKCk7XG4gIH1cblxuICBnZXQgaXNSZWFkeSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQm9vbGVhbihcbiAgICAgIHRoaXMuY29uZmlnLnVzZXJJZCAmJlxuICAgICAgdGhpcy5jb25maWcuZmVhdHVyZUZsYWdTZXJ2aWNlICYmXG4gICAgICB0aGlzLmNvbmZpZy5hbXBsaXR1ZGVBcGlLZXkgJiZcbiAgICAgIHRoaXMuYW1wbGl0dWRlQ2xpZW50LFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldExvY2FsU3RvcmFnZUl0ZW0oa2V5OiBzdHJpbmcpOiBzdHJpbmcgfCBudWxsIHtcbiAgICBpZiAodGhpcy5jb25maWcuZ2V0TG9jYWxTdG9yYWdlSXRlbSkge1xuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnLmdldExvY2FsU3RvcmFnZUl0ZW0oa2V5KTtcbiAgICB9XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5sb2NhbFN0b3JhZ2UpIHtcbiAgICAgIHJldHVybiB3aW5kb3cubG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBwcml2YXRlIGdldERlZmF1bHRUcmFja2luZ1Byb3BzKFxuICAgIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsXG4gICk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+IHtcbiAgICBjb25zdCBmZWF0dXJlR2F0ZXMgPSBPYmplY3QuZW50cmllcyh0aGlzLmNvbmZpZy5mZWF0dXJlRmxhZ1NlcnZpY2UuZ2V0RmVhdHVyZUZsYWdzKCkpO1xuICAgIGNvbnN0IGdhdGVzUHJvcHMgPVxuICAgICAgZmVhdHVyZUdhdGVzLmxlbmd0aCA+IDBcbiAgICAgICAgPyBmZWF0dXJlR2F0ZXMucmVkdWNlPFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+PigoYWNjLCBbbmFtZSwgdmFsdWVdKSA9PiB7XG4gICAgICAgICAgICBpZiAobmFtZSAmJiB2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgICAgICAgIHJldHVybiB7IC4uLmFjYywgW2BmZWF0dXJlX2dhdGUuJHtuYW1lfWBdOiB2YWx1ZSB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICB9LCB7fSlcbiAgICAgICAgOiB7fTtcbiAgICBjb25zdCBleHBlcmltZW50UHJvcHMgPSB7fTsgLy8gTm8gZGlyZWN0IGVxdWl2YWxlbnQgZm9yIGV4cGVyaW1lbnRzIGluIEVudml2ZUNvbmZpZyB5ZXRcblxuICAgIGNvbnN0IGVudmlyb25tZW50UHJvcHMgPSB7XG4gICAgICAnZW52aXJvbm1lbnQuZXhlY3V0aW9uX2NvbnRleHQnOiAnYnVuZGxlJyxcbiAgICAgICdlbnZpcm9ubWVudC5wYWdlX3VybCc6IHdpbmRvdy5sb2NhdGlvbi5ocmVmLFxuICAgICAgJ2Vudmlyb25tZW50LmVudml2ZV91c2VyX2lkJzogdGhpcy5jb25maWcudXNlcklkLFxuICAgICAgJ2Vudmlyb25tZW50LmV4ZWN1dGlvbl9lbnZpcm9ubWVudCc6IHRoaXMuY29uZmlnLmVudiB8fCAndW5rbm93bicsXG4gICAgICAnZW52aXJvbm1lbnQuY29udGV4dF9zb3VyY2UnOiB0aGlzLmNvbmZpZy5jb250ZXh0U291cmNlLFxuICAgICAgJ2Vudmlyb25tZW50LnNhbGVzX2FnZW50X2VuYWJsZWQnOiB0aGlzLmNvbmZpZy5lbmFibGVkRmVhdHVyZXM/LnNhbGVzQWdlbnQgPz8gZmFsc2UsXG4gICAgICAnZW52aXJvbm1lbnQuc2VhcmNoX2VuYWJsZWQnOiB0aGlzLmNvbmZpZy5lbmFibGVkRmVhdHVyZXM/LnNlYXJjaEFnZW50ID8/IGZhbHNlLFxuICAgICAgJ2Vudmlyb25tZW50LmVudml2ZV9vbl9xdWVyeV9wYXJhbSc6IHRoaXMuY29uZmlnLmVudml2ZU9uLFxuICAgICAgJ2Vudmlyb25tZW50LndpbmRvd19zaG93JzogdGhpcy5jb25maWcuc2hvdyxcbiAgICAgICdlbnZpcm9ubWVudC5lbnZpdmVfZW5hYmxlZCc6IHRoaXMuY29uZmlnLmVuYWJsZWRGZWF0dXJlcz8uZW52aXZlLFxuICAgIH07XG5cbiAgICBjb25zdCBvcmdMZXZlbEFtcGxpdHVkZVRyYWNraW5nUHJvcHMgPSBBbXBsaXR1ZGVTZXJ2aWNlLmlzVjNFbnZpdmVFdmVudChldmVudE5hbWUpXG4gICAgICA/IHtcbiAgICAgICAgICAuLi50aGlzLmNvbmZpZy5mZWF0dXJlRmxhZ1NlcnZpY2UuZ2V0RnVsbEZsYWdWYWx1ZXMoKSxcbiAgICAgICAgICAuLi5leHBlcmltZW50UHJvcHMsXG4gICAgICAgICAgLi4uZW52aXJvbm1lbnRQcm9wcyxcbiAgICAgICAgfVxuICAgICAgOiB7XG4gICAgICAgICAgLi4uZ2F0ZXNQcm9wcyxcbiAgICAgICAgICAuLi5leHBlcmltZW50UHJvcHMsXG4gICAgICAgIH07XG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm9yZ0xldmVsQW1wbGl0dWRlVHJhY2tpbmdQcm9wcyxcbiAgICAgIC4uLnRoaXMuc3VwcGxlbWVudGFsRGVmYXVsdFByb3BzLFxuICAgICAgYXBwX2lkOiAnY29tbWVyY2UtY2hhdC1yZWFjdC1jb21wb25lbnQnLFxuICAgICAgY2hhdF9pZDogdGhpcy5nZXRMb2NhbFN0b3JhZ2VJdGVtKExvY2FsU3RvcmFnZUtleXMuQ2hhdElkKSxcbiAgICAgIGVudjogdGhpcy5jb25maWcuZW52IHx8ICd1bmtub3duJyxcbiAgICAgIGFwcF9zb3VyY2U6IHRoaXMuY29uZmlnLmNvbnRleHRTb3VyY2UsXG4gICAgICBvcmdfaWQ6IHRoaXMuY29uZmlnLm9yZ0lkLFxuICAgICAgJ29yZy5zaG9ydF9uYW1lJzogdGhpcy5jb25maWcub3JnU2hvcnROYW1lLFxuICAgICAgJ3VzZXIuaWQnOiB0aGlzLmNvbmZpZy51c2VySWQsXG4gICAgICAnY2RwLnVzZXJfaWQnOiBudWxsLFxuICAgICAgJ2NkcC5wcm92aWRlcic6IG51bGwsXG4gICAgICAnZXZlbnQuc291cmNlJzogJ3dlYi1icm93c2VyJyxcbiAgICAgICdldmVudC50eXBlJzogJ3VzZXItYWN0aXZpdHknLFxuICAgICAgJ2V2ZW50LmlkJzogbnVsbCxcbiAgICAgICdldmVudC5jaGFubmVsJzogJ3dlYicsXG4gICAgICAnZXZlbnQudGltZXN0YW1wJzogbnVsbCxcbiAgICB9O1xuICB9XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXNcbiAgcHJpdmF0ZSBldmVudFByb3BzVG9QcmVmaXhlZEV2ZW50UHJvcHMoXG4gICAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZSxcbiAgICBldmVudFByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIGNvbnN0IHByZWZpeCA9IGV2ZW50TmFtZS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1xccysvZywgJ18nKTtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMoZXZlbnRQcm9wcykucmVkdWNlKFxuICAgICAgKGFjYywgW2tleSwgdmFsdWVdKSA9PiB7XG4gICAgICAgIGFjY1tgJHtwcmVmaXh9LiR7a2V5fWBdID0gdmFsdWU7XG4gICAgICAgIHJldHVybiBhY2M7XG4gICAgICB9LFxuICAgICAge30gYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RXZlbnRUcmFja2luZ0VucmljaG1lbnQoKTogRW5yaWNobWVudFBsdWdpbiB7XG4gICAgaWYgKHRoaXMuaW50ZXJuYWxFdmVudFRyYWNraW5nRW5yaWNobWVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5pbnRlcm5hbEV2ZW50VHJhY2tpbmdFbnJpY2htZW50O1xuICAgIH1cblxuICAgIGNvbnN0IGVucmljaG1lbnQ6IEVucmljaG1lbnRQbHVnaW4gPSB7XG4gICAgICBuYW1lOiAncGFnZS12aWV3LXRyYWNraW5nLWVucmljaG1lbnQnLFxuICAgICAgdHlwZTogJ2VucmljaG1lbnQnLFxuICAgICAgc2V0dXA6IGFzeW5jICgpID0+IHVuZGVmaW5lZCxcbiAgICAgIGV4ZWN1dGU6IGFzeW5jIChldmVudDogRXZlbnQpOiBQcm9taXNlPEV2ZW50PiA9PiB7XG4gICAgICAgIGxldCBlbnJpY2hlZEV2ZW50OiBFdmVudDtcblxuICAgICAgICBjb25zdCBldmVudHNUb0VucmljaCA9IFtcbiAgICAgICAgICAnW0FtcGxpdHVkZV0gUGFnZSBWaWV3ZWQnLFxuICAgICAgICAgIGBbU3BpZmZ5XSAke1NwaWZmeU1ldHJpY3NFdmVudE5hbWUuQnVuZGxlTG9hZGVkfWAsXG4gICAgICAgIF07XG5cbiAgICAgICAgaWYgKGV2ZW50c1RvRW5yaWNoLmluY2x1ZGVzKGV2ZW50LmV2ZW50X3R5cGUpKSB7XG4gICAgICAgICAgY29uc3QgZ2xvYmFsUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9O1xuXG4gICAgICAgICAgaWYgKHRoaXMuY29uZmlnLnNob3cgIT0gbnVsbCkge1xuICAgICAgICAgICAgZ2xvYmFsUHJvcGVydGllc1snZ2xvYmFsUHJvcGVydGllcy5zaG93J10gPSBTdHJpbmcodGhpcy5jb25maWcuc2hvdyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGdsb2JhbFByb3BlcnRpZXNbJ2dsb2JhbFByb3BlcnRpZXMuZW52J10gPSBTdHJpbmcodGhpcy5jb25maWcuZW52KTtcblxuICAgICAgICAgIGNvbnN0IGVuYWJsZWRGZWF0dXJlc1Byb3BlcnRpZXMgPSBPYmplY3QuZW50cmllcyhcbiAgICAgICAgICAgIHRoaXMuY29uZmlnPy5lbmFibGVkRmVhdHVyZXMgPz8gKHt9IGFzIFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+KSxcbiAgICAgICAgICApLnJlZHVjZTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PihcbiAgICAgICAgICAgIChhY2MsIFtrZXksIHZhbHVlXSkgPT4gKHtcbiAgICAgICAgICAgICAgLi4uYWNjLFxuICAgICAgICAgICAgICBbYGVuYWJsZWRGZWF0dXJlcy4ke2tleX1gXTogYCR7dmFsdWV9YCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAge30sXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IHRpbWluZ1Byb3BlcnRpZXMgPSB7XG4gICAgICAgICAgICAndGltaW5nLmVucmljaGVkX2F0X21zJzpcbiAgICAgICAgICAgICAgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgPyB3aW5kb3cucGVyZm9ybWFuY2U/Lm5vdygpIDogdW5kZWZpbmVkLFxuICAgICAgICAgIH07XG5cbiAgICAgICAgICBlbnJpY2hlZEV2ZW50ID0ge1xuICAgICAgICAgICAgLi4uZXZlbnQsXG4gICAgICAgICAgICBldmVudF9wcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgIC4uLmV2ZW50LmV2ZW50X3Byb3BlcnRpZXMsXG4gICAgICAgICAgICAgIC4uLnRoaXMuZ2V0RGVmYXVsdFRyYWNraW5nUHJvcHMoXG4gICAgICAgICAgICAgICAgZXZlbnQuZXZlbnRfdHlwZSBhcyBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgLi4uZ2xvYmFsUHJvcGVydGllcyxcbiAgICAgICAgICAgICAgLi4uZW5hYmxlZEZlYXR1cmVzUHJvcGVydGllcyxcbiAgICAgICAgICAgICAgLi4udGltaW5nUHJvcGVydGllcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBlbnJpY2hlZEV2ZW50ID0gZXZlbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBFdmVudHNEaXNwYXRjaGVyLmRpc3BhdGNoKFNwaWZmeUV2ZW50LkFNUExJVFVERV9FVkVOVCwgZW5yaWNoZWRFdmVudCk7XG5cbiAgICAgICAgcmV0dXJuIGVucmljaGVkRXZlbnQ7XG4gICAgICB9LFxuICAgIH07XG4gICAgdGhpcy5pbnRlcm5hbEV2ZW50VHJhY2tpbmdFbnJpY2htZW50ID0gZW5yaWNobWVudDtcbiAgICByZXR1cm4gZW5yaWNobWVudDtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGlzVmFsaWRBbXBsaXR1ZGVBcGlLZXkoYXBpS2V5OiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gL15bMC05YS1mXXszMn0kL2kudGVzdChhcGlLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplKCk6IHZvaWQge1xuICAgIGNvbnN0IGlzUmVhZHkgPSBCb29sZWFuKFxuICAgICAgdGhpcy5jb25maWcudXNlcklkICYmIHRoaXMuY29uZmlnLmZlYXR1cmVGbGFnU2VydmljZSAmJiB0aGlzLmNvbmZpZy5hbXBsaXR1ZGVBcGlLZXksXG4gICAgKTtcblxuICAgIGlmICghaXNSZWFkeSkge1xuICAgICAgbG9nZ2VyLmxvZ0RlYnVnKCdBbXBsaXR1ZGVTZXJ2aWNlIGlzIG5vdCByZWFkeScsIHtcbiAgICAgICAgaXNSZWFkeSxcbiAgICAgICAgdXNlcklkOiB0aGlzLmNvbmZpZy51c2VySWQsXG4gICAgICAgIGhhc0ZlYXR1cmVGbGFnU2VydmljZTogISF0aGlzLmNvbmZpZy5mZWF0dXJlRmxhZ1NlcnZpY2UsXG4gICAgICAgIGhhc0FtcGxpdHVkZUFwaUtleTogISF0aGlzLmNvbmZpZy5hbXBsaXR1ZGVBcGlLZXksXG4gICAgICB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoIUFtcGxpdHVkZVNlcnZpY2UuaXNWYWxpZEFtcGxpdHVkZUFwaUtleSh0aGlzLmNvbmZpZy5hbXBsaXR1ZGVBcGlLZXkpKSB7XG4gICAgICBsb2dnZXIubG9nRGVidWcoXG4gICAgICAgICdBbXBsaXR1ZGVTZXJ2aWNlIGlzIGFzc3VtaW5nIGEgbW9jayBBUEkga2V5IGlzIGluIHVzZSDigJQgbm8gY2FsbHMgd2lsbCBiZSBtYWRlIHRvIHRoZSBBbXBsaXR1ZGUgQVBJJyxcbiAgICAgICk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmFtcGxpdHVkZUNsaWVudCkge1xuICAgICAgY29uc3QgY3VycmVudEFtcGxpdHVkZUluc3RhbmNlOiBCcm93c2VyQ2xpZW50ID0gY3JlYXRlSW5zdGFuY2UoKTtcblxuICAgICAgY3VycmVudEFtcGxpdHVkZUluc3RhbmNlLmFkZCh0aGlzLmdldEV2ZW50VHJhY2tpbmdFbnJpY2htZW50KCkpO1xuICAgICAgY3VycmVudEFtcGxpdHVkZUluc3RhbmNlLmluaXQodGhpcy5jb25maWcuYW1wbGl0dWRlQXBpS2V5LCB0aGlzLmNvbmZpZy51c2VySWQsIHtcbiAgICAgICAgc2VydmVyWm9uZTogdGhpcy5jb25maWcuZGF0YVJlc2lkZW5jeSBhcyBTZXJ2ZXJab25lVHlwZSxcbiAgICAgICAgdHJhY2tpbmdPcHRpb25zOiB7XG4gICAgICAgICAgaXBBZGRyZXNzOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICBhdXRvY2FwdHVyZToge1xuICAgICAgICAgIGF0dHJpYnV0aW9uOiB0cnVlLFxuICAgICAgICAgIHBhZ2VWaWV3czoge1xuICAgICAgICAgICAgdHJhY2tIaXN0b3J5Q2hhbmdlczogJ3BhdGhPbmx5JyxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHNlc3Npb25zOiBmYWxzZSxcbiAgICAgICAgICBmb3JtSW50ZXJhY3Rpb25zOiBmYWxzZSxcbiAgICAgICAgICBmaWxlRG93bmxvYWRzOiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy5hbXBsaXR1ZGVDbGllbnQgPSBjdXJyZW50QW1wbGl0dWRlSW5zdGFuY2U7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIG1hcFdpZGdldFR5cGVUb0NoYXRDb21wb25lbnQod2lkZ2V0VHlwZTogdW5rbm93bik6IHN0cmluZyB7XG4gICAgc3dpdGNoICh3aWRnZXRUeXBlKSB7XG4gICAgICBjYXNlIFdpZGdldFR5cGVWMy5GbG9hdGluZ0J1dHRvblYzOlxuICAgICAgICByZXR1cm4gJ2Zsb2F0aW5nX2J1dHRvbic7XG4gICAgICBjYXNlIFdpZGdldFR5cGVWMy5DaGF0UHJldmlld1YzOlxuICAgICAgY2FzZSBXaWRnZXRUeXBlVjMuU29jaWFsUHJvb2ZWMzpcbiAgICAgICAgcmV0dXJuICdlbWJlZGRlZF93aWRnZXQnO1xuICAgICAgY2FzZSBXaWRnZXRUeXBlVjMuVGl0bGVkUHJvbXB0Q2Fyb3VzZWxWMzpcbiAgICAgIGNhc2UgV2lkZ2V0VHlwZVYzLlByb21wdENhcm91c2VsVjM6XG4gICAgICAgIHJldHVybiAnc3VnZ2VzdGlvbl9iYXInO1xuICAgICAgY2FzZSBXaWRnZXRUeXBlVjMuUHJvZHVjdENhcmRWMzpcbiAgICAgICAgcmV0dXJuICdpbWFnZV9wcm9tcHRfY2FyZCc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gJ3Vua25vd24nO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBtYXBUcmlnZ2VyTG9jYXRpb25Ub0NoYXRDb21wb25lbnQodHJpZ2dlckxvY2F0aW9uOiB1bmtub3duKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHRyaWdnZXJMb2NhdGlvbikge1xuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLlBST0RVQ1RfQ0FSRF9QUk9NUFRfQlVUVE9OOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLlBST0RVQ1RfQ0FSRF9URVhUX0ZJRUxEOlxuICAgICAgICByZXR1cm4gJ3Byb21wdF9jYXJkJztcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5QUk9NUFRfQ0FST1VTRUw6XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuVElUTEVEX1BST01QVF9DQVJPVVNFTDpcbiAgICAgICAgcmV0dXJuICd0b3BfcmV2aWV3c19zbmlwcGV0JztcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5UWVBJTkdfQU5JTUFUSU9OOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLlNPQ0lBTF9QUk9PRl9QUklNQVJZX0JVVFRPTjpcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5TT0NJQUxfUFJPT0ZfU0VDT05EQVJZX0JVVFRPTjpcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5TT0NJQUxfUFJPT0ZfVEVYVF9GSUVMRDpcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5DSEFUX1BSRVZJRVdfQ09NUEFSSVNPTl9QUk9NUFRfQlVUVE9OOlxuICAgICAgY2FzZSBDaGF0RWxlbWVudERpc3BsYXlMb2NhdGlvblYzLkNIQVRfUFJFVklFV19DT01QQVJJU09OX1RFWFRfRklFTEQ6XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuQ0hBVF9QUkVWSUVXX1BST01QVF9CVVRUT046XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuQ0hBVF9QUkVWSUVXX1RFWFRfRklFTEQ6XG4gICAgICAgIHJldHVybiAnY2hhdF9wcmV2aWV3JztcbiAgICAgIGNhc2UgQ2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25WMy5GTE9BVElOR19DSEFUX09WRVJMQVk6XG4gICAgICBjYXNlIENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uVjMuRkxPQVRJTkdfQ0hBVF9DTE9TRV9CVVRUT046XG4gICAgICAgIHJldHVybiAnaW5fY2hhdCc7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdHJpZ2dlckxvY2F0aW9uIGFzIHN0cmluZztcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIGFsbG93cyB1cyB0byBtYXAgdGhlIGV2ZW50IHByb3BzIHRvIHRoZSBjb3JyZWN0IGZvcm1hdCBmb3IgdGhlIGxlZ2FjeSBhbXBsaXR1ZGUgZXZlbnRzXG4gIHN0YXRpYyBtYXBFdmVudFByb3BzKHsgZXZlbnROYW1lLCBldmVudFByb3BzIH06IFRyYWNrRXZlbnRQYXJhbXMpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgY29uc3QgbWVzc2FnZU1ldGFkYXRhID0gZXZlbnRQcm9wcz8ubWVzc2FnZV9tZXRhZGF0YSA/PyB7fTtcbiAgICBjb25zdCB0cmlnZ2VyTG9jYXRpb24gPVxuICAgICAgbWVzc2FnZU1ldGFkYXRhICE9PSBudWxsICYmXG4gICAgICB0eXBlb2YgbWVzc2FnZU1ldGFkYXRhID09PSAnb2JqZWN0JyAmJlxuICAgICAgJ3RyaWdnZXJfbG9jYXRpb24nIGluIG1lc3NhZ2VNZXRhZGF0YVxuICAgICAgICA/IG1lc3NhZ2VNZXRhZGF0YS50cmlnZ2VyX2xvY2F0aW9uXG4gICAgICAgIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50RXhwYW5kZWQpIHtcbiAgICAgIGNvbnN0IG1hcHBlZFRyaWdnZXJMb2NjYXRpb24gPVxuICAgICAgICBBbXBsaXR1ZGVTZXJ2aWNlLm1hcFRyaWdnZXJMb2NhdGlvblRvQ2hhdENvbXBvbmVudCh0cmlnZ2VyTG9jYXRpb24pO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uZXZlbnRQcm9wcyxcbiAgICAgICAgbWVzc2FnZV9tZXRhZGF0YToge1xuICAgICAgICAgIC4uLm1lc3NhZ2VNZXRhZGF0YSxcbiAgICAgICAgICB0cmlnZ2VyX2xvY2F0aW9uOiBtYXBwZWRUcmlnZ2VyTG9jY2F0aW9uLFxuICAgICAgICAgIGZ1bGxfdHJpZ2dlcl9sb2NhdGlvbjogdHJpZ2dlckxvY2F0aW9uLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoZXZlbnROYW1lID09PSBTcGlmZnlNZXRyaWNzRXZlbnROYW1lLkNoYXRDb21wb25lbnRWaXNpYmxlKSB7XG4gICAgICBjb25zdCBtYXBwZWRXaWRnZXRUeXBlID0gQW1wbGl0dWRlU2VydmljZS5tYXBXaWRnZXRUeXBlVG9DaGF0Q29tcG9uZW50KFxuICAgICAgICBldmVudFByb3BzPy53aWRnZXRfdHlwZSxcbiAgICAgICk7XG4gICAgICBjb25zdCBtYXBwZWRUcmlnZ2VyTG9jY2F0aW9uID1cbiAgICAgICAgQW1wbGl0dWRlU2VydmljZS5tYXBUcmlnZ2VyTG9jYXRpb25Ub0NoYXRDb21wb25lbnQodHJpZ2dlckxvY2F0aW9uKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgICAgIG1lc3NhZ2VfbWV0YWRhdGE6IHtcbiAgICAgICAgICAuLi5tZXNzYWdlTWV0YWRhdGEsXG4gICAgICAgICAgdHJpZ2dlcl9sb2NhdGlvbjogbWFwcGVkVHJpZ2dlckxvY2NhdGlvbixcbiAgICAgICAgICBmdWxsX3RyaWdnZXJfbG9jYXRpb246IHRyaWdnZXJMb2NhdGlvbixcbiAgICAgICAgfSxcbiAgICAgICAgY2hhdF9jb21wb25lbnQ6IG1hcHBlZFdpZGdldFR5cGUsXG4gICAgICAgICdjaGF0LmNvbXBvbmVudF92aXNpYmxlJzogdHJ1ZSxcbiAgICAgIH07XG4gICAgfVxuICAgIHJldHVybiBldmVudFByb3BzID8/IHt9O1xuICB9XG5cbiAgc3RhdGljIGlzVjNFbnZpdmVFdmVudChldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIE9iamVjdC52YWx1ZXMoRW52aXZlTWV0cmljc0V2ZW50TmFtZSkuaW5jbHVkZXMoZXZlbnROYW1lIGFzIEVudml2ZU1ldHJpY3NFdmVudE5hbWUpO1xuICB9XG5cbiAgc3RhdGljIGRlY29yYXRlRXZlbnROYW1lKGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUpOiBzdHJpbmcge1xuICAgIGlmIChBbXBsaXR1ZGVTZXJ2aWNlLmlzVjNFbnZpdmVFdmVudChldmVudE5hbWUpKSB7XG4gICAgICByZXR1cm4gYFtFbnZpdmVdICR7ZXZlbnROYW1lfWA7XG4gICAgfVxuICAgIHJldHVybiBgW1NwaWZmeV0gJHtldmVudE5hbWV9YDtcbiAgfVxuXG4gIGFzeW5jIHRyYWNrRXZlbnQoe1xuICAgIGV2ZW50TmFtZSxcbiAgICBldmVudFByb3BzLFxuICAgIGV2ZW50R3JvdXBzLFxuICAgIGFsc29TZW5kVG9Hb29nbGVBbmFseXRpY3MgPSBmYWxzZSxcbiAgfTogVHJhY2tFdmVudFBhcmFtcyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGxvZ2dlci5sb2dEZWJ1ZygnU3VibWl0dGluZyBldmVudCcsIGV2ZW50TmFtZSk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGRlY29yYXRlZEV2ZW50TmFtZSA9IEFtcGxpdHVkZVNlcnZpY2UuZGVjb3JhdGVFdmVudE5hbWUoZXZlbnROYW1lKTtcblxuICAgICAgaWYgKCF0aGlzLmFtcGxpdHVkZUNsaWVudCkge1xuICAgICAgICBsb2dnZXIubG9nV2FybignYW1wbGl0dWRlIGNsaWVudCB1bmRlZmluZWQnLCB1bmRlZmluZWQsIHtcbiAgICAgICAgICBldmVudF9uYW1lOiBkZWNvcmF0ZWRFdmVudE5hbWUsXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IG1hcHBlZEV2ZW50UHJvcHMgPSBBbXBsaXR1ZGVTZXJ2aWNlLm1hcEV2ZW50UHJvcHMoeyBldmVudE5hbWUsIGV2ZW50UHJvcHMgfSk7XG5cbiAgICAgIGNvbnN0IGV2ZW50RGF0YSA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICBldmVudFByb3BzOiBtYXBwZWRFdmVudFByb3BzLFxuICAgICAgICBjcmVhdGVkX2F0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKTtcbiAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVyLmVuY29kZShldmVudERhdGEpO1xuICAgICAgLy8gY2FsY3VsYXRlIGEgaGFzaCBvZiB0aGUgZXZlbnQgcHJvcGVydGllcyB0byB1c2UgYXMgdGhlIGluc2VydF9pZCBzbyB0aGF0IGR1cGxpY2F0ZSBldmVudHNcbiAgICAgIC8vIGFyZSBhdXRvbWF0aWNhbGx5IGRyb3BwZWQgYnkgQW1wbGl0dWRlXG4gICAgICBjb25zdCBoYXNoQnVmZmVyID0gYXdhaXQgY3J5cHRvLnN1YnRsZS5kaWdlc3QoJ1NIQS0yNTYnLCBkYXRhKTtcbiAgICAgIGNvbnN0IGhhc2hBcnJheSA9IEFycmF5LmZyb20obmV3IFVpbnQ4QXJyYXkoaGFzaEJ1ZmZlcikpO1xuICAgICAgY29uc3QgY3VycmVudEluc2VydElkID0gaGFzaEFycmF5Lm1hcChiID0+IGIudG9TdHJpbmcoMTYpLnBhZFN0YXJ0KDIsICcwJykpLmpvaW4oJycpO1xuXG4gICAgICBsb2dnZXIubG9nRGVidWcoYGFtcGxpdHVkZSB0cmFja2luZyAke2RlY29yYXRlZEV2ZW50TmFtZX1gLCBudWxsLCB7XG4gICAgICAgIGV2ZW50X25hbWU6IGRlY29yYXRlZEV2ZW50TmFtZSxcbiAgICAgICAgcHJvcHM6IG1hcHBlZEV2ZW50UHJvcHMsXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5hbXBsaXR1ZGVDbGllbnQudHJhY2soXG4gICAgICAgIGRlY29yYXRlZEV2ZW50TmFtZSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnRoaXMuZ2V0RGVmYXVsdFRyYWNraW5nUHJvcHMoZXZlbnROYW1lKSxcbiAgICAgICAgICAuLi5tYXBwZWRFdmVudFByb3BzLFxuICAgICAgICAgIC4uLihtYXBwZWRFdmVudFByb3BzXG4gICAgICAgICAgICA/IHRoaXMuZXZlbnRQcm9wc1RvUHJlZml4ZWRFdmVudFByb3BzKGV2ZW50TmFtZSwgbWFwcGVkRXZlbnRQcm9wcylcbiAgICAgICAgICAgIDoge30pLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgLi4uZXZlbnRHcm91cHMsXG4gICAgICAgICAgaW5zZXJ0X2lkOiBjdXJyZW50SW5zZXJ0SWQsXG4gICAgICAgIH0sXG4gICAgICApO1xuXG4gICAgICBpZiAoQW1wbGl0dWRlU2VydmljZS5pc1YzRW52aXZlRXZlbnQoZXZlbnROYW1lKSAmJiB0aGlzLmNvbmZpZy5vcmdHYUNvbmZpZykge1xuICAgICAgICBjb25zdCBtZXJnZWRQcm9wc0ZvckdBNCA9IHtcbiAgICAgICAgICAuLi50aGlzLmdldERlZmF1bHRUcmFja2luZ1Byb3BzKGV2ZW50TmFtZSksXG4gICAgICAgICAgLi4ubWFwcGVkRXZlbnRQcm9wcyxcbiAgICAgICAgfTtcbiAgICAgICAgcHJvamVjdFRvR0E0KGV2ZW50TmFtZSBhcyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBtZXJnZWRQcm9wc0ZvckdBNCk7XG4gICAgICB9IGVsc2UgaWYgKGFsc29TZW5kVG9Hb29nbGVBbmFseXRpY3MgJiYgdGhpcy5jb25maWcub3JnR2FDb25maWcpIHtcbiAgICAgICAgbG9nZ2VyLmxvZ0RlYnVnKCdHQSB0cmFja2luZycsIGRlY29yYXRlZEV2ZW50TmFtZSk7XG4gICAgICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJyAmJiB3aW5kb3cuZGF0YUxheWVyKSB7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgICAgICAgICAod2luZG93LmRhdGFMYXllciBhcyBhbnlbXSkucHVzaCh7XG4gICAgICAgICAgICBldmVudDogZGVjb3JhdGVkRXZlbnROYW1lLFxuICAgICAgICAgICAgZXZlbnRQcm9wcyxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgbG9nZ2VyLmxvZ0Vycm9yKCdFcnJvciB0cmFja2luZyBldmVudCcsIGVyciwge1xuICAgICAgICBldmVudE5hbWUsXG4gICAgICAgIGV2ZW50UHJvcHMsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICAvLyBFbnN1cmUgdGhhdCBzdXBwbGVtZW50YWwgZGVmYXVsdCBwcm9wcyBhcmUgbWVyZ2VkIHdpdGggdGhlIGV4aXN0aW5nIHByb3BzXG4gIHNldFN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcyhwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiB2b2lkIHtcbiAgICB0aGlzLnN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcyA9IHByb3BzO1xuICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFtQkEsTUFBTSxTQUFTLElBQUlBLHVC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
@@ -34,6 +34,7 @@ declare class AmplitudeService {
34
34
  private getDefaultTrackingProps;
35
35
  private eventPropsToPrefixedEventProps;
36
36
  private getEventTrackingEnrichment;
37
+ private static isValidAmplitudeApiKey;
37
38
  private initialize;
38
39
  static mapWidgetTypeToChatComponent(widgetType: unknown): string;
39
40
  static mapTriggerLocationToChatComponent(triggerLocation: unknown): string;
@@ -53,4 +54,4 @@ declare class AmplitudeService {
53
54
  }
54
55
  //#endregion
55
56
  export { AmplitudeService, AmplitudeServiceConfig, TrackEventParams };
56
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlU2VydmljZS5kLmN0cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvYW1wbGl0dWRlU2VydmljZS9hbXBsaXR1ZGVTZXJ2aWNlLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZUZsYWdTZXJ2aWNlIH0gZnJvbSAnc3JjL2NvbnRleHRzL2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dCc7XG5pbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnLi9ldmVudE5hbWVzJztcbmV4cG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfTtcbmV4cG9ydCBpbnRlcmZhY2UgVHJhY2tFdmVudFBhcmFtcyB7XG4gICAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZTtcbiAgICBldmVudFByb3BzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgZXZlbnRHcm91cHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzPzogYm9vbGVhbjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQW1wbGl0dWRlU2VydmljZUNvbmZpZyB7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgYW1wbGl0dWRlQXBpS2V5OiBzdHJpbmc7XG4gICAgZGF0YVJlc2lkZW5jeTogc3RyaW5nO1xuICAgIGVudjogc3RyaW5nO1xuICAgIGNvbnRleHRTb3VyY2U6IHN0cmluZztcbiAgICBvcmdTaG9ydE5hbWU6IHN0cmluZztcbiAgICBvcmdJZDogc3RyaW5nO1xuICAgIGZlYXR1cmVGbGFnU2VydmljZTogRmVhdHVyZUZsYWdTZXJ2aWNlO1xuICAgIG9yZ0dhQ29uZmlnPzogdW5rbm93bjtcbiAgICBzaG93OiBib29sZWFuO1xuICAgIGVudml2ZU9uOiBib29sZWFuO1xuICAgIGVuYWJsZWRGZWF0dXJlcz86IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuICAgIGdldExvY2FsU3RvcmFnZUl0ZW06IG51bGwgfCAoKGtleTogc3RyaW5nKSA9PiBzdHJpbmcgfCBudWxsKTtcbn1cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIEFtcGxpdHVkZVNlcnZpY2Uge1xuICAgIHByaXZhdGUgYW1wbGl0dWRlQ2xpZW50O1xuICAgIHByaXZhdGUgaW50ZXJuYWxFdmVudFRyYWNraW5nRW5yaWNobWVudDtcbiAgICBwcml2YXRlIHN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcztcbiAgICBwcml2YXRlIGNvbmZpZztcbiAgICBjb25zdHJ1Y3Rvcihjb25maWc6IEFtcGxpdHVkZVNlcnZpY2VDb25maWcpO1xuICAgIGdldCBpc1JlYWR5KCk6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBnZXRMb2NhbFN0b3JhZ2VJdGVtO1xuICAgIHByaXZhdGUgZ2V0RGVmYXVsdFRyYWNraW5nUHJvcHM7XG4gICAgcHJpdmF0ZSBldmVudFByb3BzVG9QcmVmaXhlZEV2ZW50UHJvcHM7XG4gICAgcHJpdmF0ZSBnZXRFdmVudFRyYWNraW5nRW5yaWNobWVudDtcbiAgICBwcml2YXRlIGluaXRpYWxpemU7XG4gICAgc3RhdGljIG1hcFdpZGdldFR5cGVUb0NoYXRDb21wb25lbnQod2lkZ2V0VHlwZTogdW5rbm93bik6IHN0cmluZztcbiAgICBzdGF0aWMgbWFwVHJpZ2dlckxvY2F0aW9uVG9DaGF0Q29tcG9uZW50KHRyaWdnZXJMb2NhdGlvbjogdW5rbm93bik6IHN0cmluZztcbiAgICBzdGF0aWMgbWFwRXZlbnRQcm9wcyh7IGV2ZW50TmFtZSwgZXZlbnRQcm9wcyB9OiBUcmFja0V2ZW50UGFyYW1zKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgc3RhdGljIGlzVjNFbnZpdmVFdmVudChldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lKTogYm9vbGVhbjtcbiAgICBzdGF0aWMgZGVjb3JhdGVFdmVudE5hbWUoZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZSk6IHN0cmluZztcbiAgICB0cmFja0V2ZW50KHsgZXZlbnROYW1lLCBldmVudFByb3BzLCBldmVudEdyb3VwcywgYWxzb1NlbmRUb0dvb2dsZUFuYWx5dGljcywgfTogVHJhY2tFdmVudFBhcmFtcyk6IFByb21pc2U8dm9pZD47XG4gICAgc2V0U3VwcGxlbWVudGFsRGVmYXVsdFByb3BzKHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPik6IHZvaWQ7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSxJQUFXLG1CQUFtQjtDQUFDO09BQUc7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNsQyxJQUFXLHlCQUF5QjtDQUFDO09BQVc7T0FBYztDQUFBO0FBQzlELElBQVcsbUJBQW1CO0NBQUM7T0FBUztPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBIn0=
57
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlU2VydmljZS5kLmN0cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2VydmljZXMvYW1wbGl0dWRlU2VydmljZS9hbXBsaXR1ZGVTZXJ2aWNlLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmVhdHVyZUZsYWdTZXJ2aWNlIH0gZnJvbSAnc3JjL2NvbnRleHRzL2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dCc7XG5pbXBvcnQgeyBFbnZpdmVNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIH0gZnJvbSAnLi9ldmVudE5hbWVzJztcbmV4cG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfTtcbmV4cG9ydCBpbnRlcmZhY2UgVHJhY2tFdmVudFBhcmFtcyB7XG4gICAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZTtcbiAgICBldmVudFByb3BzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gICAgZXZlbnRHcm91cHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzPzogYm9vbGVhbjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgQW1wbGl0dWRlU2VydmljZUNvbmZpZyB7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgYW1wbGl0dWRlQXBpS2V5OiBzdHJpbmc7XG4gICAgZGF0YVJlc2lkZW5jeTogc3RyaW5nO1xuICAgIGVudjogc3RyaW5nO1xuICAgIGNvbnRleHRTb3VyY2U6IHN0cmluZztcbiAgICBvcmdTaG9ydE5hbWU6IHN0cmluZztcbiAgICBvcmdJZDogc3RyaW5nO1xuICAgIGZlYXR1cmVGbGFnU2VydmljZTogRmVhdHVyZUZsYWdTZXJ2aWNlO1xuICAgIG9yZ0dhQ29uZmlnPzogdW5rbm93bjtcbiAgICBzaG93OiBib29sZWFuO1xuICAgIGVudml2ZU9uOiBib29sZWFuO1xuICAgIGVuYWJsZWRGZWF0dXJlcz86IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuICAgIGdldExvY2FsU3RvcmFnZUl0ZW06IG51bGwgfCAoKGtleTogc3RyaW5nKSA9PiBzdHJpbmcgfCBudWxsKTtcbn1cbmV4cG9ydCBkZWNsYXJlIGNsYXNzIEFtcGxpdHVkZVNlcnZpY2Uge1xuICAgIHByaXZhdGUgYW1wbGl0dWRlQ2xpZW50O1xuICAgIHByaXZhdGUgaW50ZXJuYWxFdmVudFRyYWNraW5nRW5yaWNobWVudDtcbiAgICBwcml2YXRlIHN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcztcbiAgICBwcml2YXRlIGNvbmZpZztcbiAgICBjb25zdHJ1Y3Rvcihjb25maWc6IEFtcGxpdHVkZVNlcnZpY2VDb25maWcpO1xuICAgIGdldCBpc1JlYWR5KCk6IGJvb2xlYW47XG4gICAgcHJpdmF0ZSBnZXRMb2NhbFN0b3JhZ2VJdGVtO1xuICAgIHByaXZhdGUgZ2V0RGVmYXVsdFRyYWNraW5nUHJvcHM7XG4gICAgcHJpdmF0ZSBldmVudFByb3BzVG9QcmVmaXhlZEV2ZW50UHJvcHM7XG4gICAgcHJpdmF0ZSBnZXRFdmVudFRyYWNraW5nRW5yaWNobWVudDtcbiAgICBwcml2YXRlIHN0YXRpYyBpc1ZhbGlkQW1wbGl0dWRlQXBpS2V5O1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZTtcbiAgICBzdGF0aWMgbWFwV2lkZ2V0VHlwZVRvQ2hhdENvbXBvbmVudCh3aWRnZXRUeXBlOiB1bmtub3duKTogc3RyaW5nO1xuICAgIHN0YXRpYyBtYXBUcmlnZ2VyTG9jYXRpb25Ub0NoYXRDb21wb25lbnQodHJpZ2dlckxvY2F0aW9uOiB1bmtub3duKTogc3RyaW5nO1xuICAgIHN0YXRpYyBtYXBFdmVudFByb3BzKHsgZXZlbnROYW1lLCBldmVudFByb3BzIH06IFRyYWNrRXZlbnRQYXJhbXMpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICBzdGF0aWMgaXNWM0Vudml2ZUV2ZW50KGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUpOiBib29sZWFuO1xuICAgIHN0YXRpYyBkZWNvcmF0ZUV2ZW50TmFtZShldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lKTogc3RyaW5nO1xuICAgIHRyYWNrRXZlbnQoeyBldmVudE5hbWUsIGV2ZW50UHJvcHMsIGV2ZW50R3JvdXBzLCBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzLCB9OiBUcmFja0V2ZW50UGFyYW1zKTogUHJvbWlzZTx2b2lkPjtcbiAgICBzZXRTdXBwbGVtZW50YWxEZWZhdWx0UHJvcHMocHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLElBQVcsbUJBQW1CO0NBQUM7T0FBRztPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ2xDLElBQVcseUJBQXlCO0NBQUM7T0FBVztPQUFjO0NBQUE7QUFDOUQsSUFBVyxtQkFBbUI7Q0FBQztPQUFTO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUEifQ==
@@ -34,6 +34,7 @@ declare class AmplitudeService {
34
34
  private getDefaultTrackingProps;
35
35
  private eventPropsToPrefixedEventProps;
36
36
  private getEventTrackingEnrichment;
37
+ private static isValidAmplitudeApiKey;
37
38
  private initialize;
38
39
  static mapWidgetTypeToChatComponent(widgetType: unknown): string;
39
40
  static mapTriggerLocationToChatComponent(triggerLocation: unknown): string;
@@ -53,4 +54,4 @@ declare class AmplitudeService {
53
54
  }
54
55
  //#endregion
55
56
  export { AmplitudeService, AmplitudeServiceConfig, TrackEventParams };
56
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlU2VydmljZS5kLnRzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9hbXBsaXR1ZGVTZXJ2aWNlL2FtcGxpdHVkZVNlcnZpY2UuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tICdzcmMvY29udGV4dHMvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dC9mZWF0dXJlRmxhZ1NlcnZpY2VDb250ZXh0JztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuL2V2ZW50TmFtZXMnO1xuZXhwb3J0IHsgRW52aXZlTWV0cmljc0V2ZW50TmFtZSwgU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB9O1xuZXhwb3J0IGludGVyZmFjZSBUcmFja0V2ZW50UGFyYW1zIHtcbiAgICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICAgIGV2ZW50UHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICBldmVudEdyb3Vwcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgIGFsc29TZW5kVG9Hb29nbGVBbmFseXRpY3M/OiBib29sZWFuO1xufVxuZXhwb3J0IGludGVyZmFjZSBBbXBsaXR1ZGVTZXJ2aWNlQ29uZmlnIHtcbiAgICB1c2VySWQ6IHN0cmluZztcbiAgICBhbXBsaXR1ZGVBcGlLZXk6IHN0cmluZztcbiAgICBkYXRhUmVzaWRlbmN5OiBzdHJpbmc7XG4gICAgZW52OiBzdHJpbmc7XG4gICAgY29udGV4dFNvdXJjZTogc3RyaW5nO1xuICAgIG9yZ1Nob3J0TmFtZTogc3RyaW5nO1xuICAgIG9yZ0lkOiBzdHJpbmc7XG4gICAgZmVhdHVyZUZsYWdTZXJ2aWNlOiBGZWF0dXJlRmxhZ1NlcnZpY2U7XG4gICAgb3JnR2FDb25maWc/OiB1bmtub3duO1xuICAgIHNob3c6IGJvb2xlYW47XG4gICAgZW52aXZlT246IGJvb2xlYW47XG4gICAgZW5hYmxlZEZlYXR1cmVzPzogUmVjb3JkPHN0cmluZywgYm9vbGVhbj47XG4gICAgZ2V0TG9jYWxTdG9yYWdlSXRlbTogbnVsbCB8ICgoa2V5OiBzdHJpbmcpID0+IHN0cmluZyB8IG51bGwpO1xufVxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgQW1wbGl0dWRlU2VydmljZSB7XG4gICAgcHJpdmF0ZSBhbXBsaXR1ZGVDbGllbnQ7XG4gICAgcHJpdmF0ZSBpbnRlcm5hbEV2ZW50VHJhY2tpbmdFbnJpY2htZW50O1xuICAgIHByaXZhdGUgc3VwcGxlbWVudGFsRGVmYXVsdFByb3BzO1xuICAgIHByaXZhdGUgY29uZmlnO1xuICAgIGNvbnN0cnVjdG9yKGNvbmZpZzogQW1wbGl0dWRlU2VydmljZUNvbmZpZyk7XG4gICAgZ2V0IGlzUmVhZHkoKTogYm9vbGVhbjtcbiAgICBwcml2YXRlIGdldExvY2FsU3RvcmFnZUl0ZW07XG4gICAgcHJpdmF0ZSBnZXREZWZhdWx0VHJhY2tpbmdQcm9wcztcbiAgICBwcml2YXRlIGV2ZW50UHJvcHNUb1ByZWZpeGVkRXZlbnRQcm9wcztcbiAgICBwcml2YXRlIGdldEV2ZW50VHJhY2tpbmdFbnJpY2htZW50O1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZTtcbiAgICBzdGF0aWMgbWFwV2lkZ2V0VHlwZVRvQ2hhdENvbXBvbmVudCh3aWRnZXRUeXBlOiB1bmtub3duKTogc3RyaW5nO1xuICAgIHN0YXRpYyBtYXBUcmlnZ2VyTG9jYXRpb25Ub0NoYXRDb21wb25lbnQodHJpZ2dlckxvY2F0aW9uOiB1bmtub3duKTogc3RyaW5nO1xuICAgIHN0YXRpYyBtYXBFdmVudFByb3BzKHsgZXZlbnROYW1lLCBldmVudFByb3BzIH06IFRyYWNrRXZlbnRQYXJhbXMpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICBzdGF0aWMgaXNWM0Vudml2ZUV2ZW50KGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUpOiBib29sZWFuO1xuICAgIHN0YXRpYyBkZWNvcmF0ZUV2ZW50TmFtZShldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lKTogc3RyaW5nO1xuICAgIHRyYWNrRXZlbnQoeyBldmVudE5hbWUsIGV2ZW50UHJvcHMsIGV2ZW50R3JvdXBzLCBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzLCB9OiBUcmFja0V2ZW50UGFyYW1zKTogUHJvbWlzZTx2b2lkPjtcbiAgICBzZXRTdXBwbGVtZW50YWxEZWZhdWx0UHJvcHMocHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KTogdm9pZDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLElBQVcsbUJBQW1CO0NBQUM7T0FBRztPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ2xDLElBQVcseUJBQXlCO0NBQUM7T0FBVztPQUFjO0NBQUE7QUFDOUQsSUFBVyxtQkFBbUI7Q0FBQztPQUFTO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUEifQ==
57
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlU2VydmljZS5kLnRzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zZXJ2aWNlcy9hbXBsaXR1ZGVTZXJ2aWNlL2FtcGxpdHVkZVNlcnZpY2UuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tICdzcmMvY29udGV4dHMvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dC9mZWF0dXJlRmxhZ1NlcnZpY2VDb250ZXh0JztcbmltcG9ydCB7IEVudml2ZU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICcuL2V2ZW50TmFtZXMnO1xuZXhwb3J0IHsgRW52aXZlTWV0cmljc0V2ZW50TmFtZSwgU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB9O1xuZXhwb3J0IGludGVyZmFjZSBUcmFja0V2ZW50UGFyYW1zIHtcbiAgICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfCBFbnZpdmVNZXRyaWNzRXZlbnROYW1lO1xuICAgIGV2ZW50UHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgICBldmVudEdyb3Vwcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgIGFsc29TZW5kVG9Hb29nbGVBbmFseXRpY3M/OiBib29sZWFuO1xufVxuZXhwb3J0IGludGVyZmFjZSBBbXBsaXR1ZGVTZXJ2aWNlQ29uZmlnIHtcbiAgICB1c2VySWQ6IHN0cmluZztcbiAgICBhbXBsaXR1ZGVBcGlLZXk6IHN0cmluZztcbiAgICBkYXRhUmVzaWRlbmN5OiBzdHJpbmc7XG4gICAgZW52OiBzdHJpbmc7XG4gICAgY29udGV4dFNvdXJjZTogc3RyaW5nO1xuICAgIG9yZ1Nob3J0TmFtZTogc3RyaW5nO1xuICAgIG9yZ0lkOiBzdHJpbmc7XG4gICAgZmVhdHVyZUZsYWdTZXJ2aWNlOiBGZWF0dXJlRmxhZ1NlcnZpY2U7XG4gICAgb3JnR2FDb25maWc/OiB1bmtub3duO1xuICAgIHNob3c6IGJvb2xlYW47XG4gICAgZW52aXZlT246IGJvb2xlYW47XG4gICAgZW5hYmxlZEZlYXR1cmVzPzogUmVjb3JkPHN0cmluZywgYm9vbGVhbj47XG4gICAgZ2V0TG9jYWxTdG9yYWdlSXRlbTogbnVsbCB8ICgoa2V5OiBzdHJpbmcpID0+IHN0cmluZyB8IG51bGwpO1xufVxuZXhwb3J0IGRlY2xhcmUgY2xhc3MgQW1wbGl0dWRlU2VydmljZSB7XG4gICAgcHJpdmF0ZSBhbXBsaXR1ZGVDbGllbnQ7XG4gICAgcHJpdmF0ZSBpbnRlcm5hbEV2ZW50VHJhY2tpbmdFbnJpY2htZW50O1xuICAgIHByaXZhdGUgc3VwcGxlbWVudGFsRGVmYXVsdFByb3BzO1xuICAgIHByaXZhdGUgY29uZmlnO1xuICAgIGNvbnN0cnVjdG9yKGNvbmZpZzogQW1wbGl0dWRlU2VydmljZUNvbmZpZyk7XG4gICAgZ2V0IGlzUmVhZHkoKTogYm9vbGVhbjtcbiAgICBwcml2YXRlIGdldExvY2FsU3RvcmFnZUl0ZW07XG4gICAgcHJpdmF0ZSBnZXREZWZhdWx0VHJhY2tpbmdQcm9wcztcbiAgICBwcml2YXRlIGV2ZW50UHJvcHNUb1ByZWZpeGVkRXZlbnRQcm9wcztcbiAgICBwcml2YXRlIGdldEV2ZW50VHJhY2tpbmdFbnJpY2htZW50O1xuICAgIHByaXZhdGUgc3RhdGljIGlzVmFsaWRBbXBsaXR1ZGVBcGlLZXk7XG4gICAgcHJpdmF0ZSBpbml0aWFsaXplO1xuICAgIHN0YXRpYyBtYXBXaWRnZXRUeXBlVG9DaGF0Q29tcG9uZW50KHdpZGdldFR5cGU6IHVua25vd24pOiBzdHJpbmc7XG4gICAgc3RhdGljIG1hcFRyaWdnZXJMb2NhdGlvblRvQ2hhdENvbXBvbmVudCh0cmlnZ2VyTG9jYXRpb246IHVua25vd24pOiBzdHJpbmc7XG4gICAgc3RhdGljIG1hcEV2ZW50UHJvcHMoeyBldmVudE5hbWUsIGV2ZW50UHJvcHMgfTogVHJhY2tFdmVudFBhcmFtcyk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICAgIHN0YXRpYyBpc1YzRW52aXZlRXZlbnQoZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lIHwgRW52aXZlTWV0cmljc0V2ZW50TmFtZSk6IGJvb2xlYW47XG4gICAgc3RhdGljIGRlY29yYXRlRXZlbnROYW1lKGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB8IEVudml2ZU1ldHJpY3NFdmVudE5hbWUpOiBzdHJpbmc7XG4gICAgdHJhY2tFdmVudCh7IGV2ZW50TmFtZSwgZXZlbnRQcm9wcywgZXZlbnRHcm91cHMsIGFsc29TZW5kVG9Hb29nbGVBbmFseXRpY3MsIH06IFRyYWNrRXZlbnRQYXJhbXMpOiBQcm9taXNlPHZvaWQ+O1xuICAgIHNldFN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcyhwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj4pOiB2b2lkO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7O0FBR0EsSUFBVyxtQkFBbUI7Q0FBQztPQUFHO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFDbEMsSUFBVyx5QkFBeUI7Q0FBQztPQUFXO09BQWM7Q0FBQTtBQUM5RCxJQUFXLG1CQUFtQjtDQUFDO09BQVM7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQSJ9