@envive-ai/react-hooks 0.2.6-alpha-4 → 0.2.6-alpha-6

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 (225) hide show
  1. package/dist/{AmplitudeOperations-Dpp91XWV.js → AmplitudeOperations-CaA5jTCq.js} +2 -2
  2. package/dist/{AmplitudeOperations-BEhMCOtx.cjs → AmplitudeOperations-CufFJLkn.cjs} +3 -3
  3. package/dist/{NewOrgConfig-Cx3R7FM6.js → NewOrgConfig-BnLPlU6Z.js} +2 -2
  4. package/dist/{NewOrgConfig-DRs9Sk4E.cjs → NewOrgConfig-CKHO6QW_.cjs} +2 -2
  5. package/dist/{TrackComponentVisibleEvent-OAFP4CZ6.cjs → TrackComponentVisibleEvent-BvrgpJuY.cjs} +4 -4
  6. package/dist/{TrackComponentVisibleEvent-CIfRZtFq.js → TrackComponentVisibleEvent-CKELFJhI.js} +3 -3
  7. package/dist/amplitudeContext-Bh4SVVse.js +227 -0
  8. package/dist/amplitudeContext-CjFkl5yr.cjs +243 -0
  9. package/dist/amplitudeTrackEventAtom-D66l5oFp.js +8 -0
  10. package/dist/amplitudeTrackEventAtom-f22P2U0u.cjs +15 -0
  11. package/dist/app-CrmrUsr6.js +514 -0
  12. package/dist/app-DudAJOe4.cjs +569 -0
  13. package/dist/application/models/graphql/index.d.ts +1 -1
  14. package/dist/application/models/guards/api/index.d.ts +2 -2
  15. package/dist/application/models/guards/utils.d.ts +1 -1
  16. package/dist/application/models/index.d.cts +1 -1
  17. package/dist/application/models/index.d.ts +4 -4
  18. package/dist/application/utils/index.cjs +3 -12
  19. package/dist/application/utils/index.d.cts +5 -6
  20. package/dist/application/utils/index.d.ts +8 -9
  21. package/dist/application/utils/index.js +3 -12
  22. package/dist/atoms/app/index.cjs +13 -15
  23. package/dist/atoms/app/index.d.cts +7 -7
  24. package/dist/atoms/app/index.d.ts +6 -6
  25. package/dist/atoms/app/index.js +8 -10
  26. package/dist/atoms/atomStore/index.d.cts +1 -1
  27. package/dist/atoms/chat/index.cjs +11 -13
  28. package/dist/atoms/chat/index.d.cts +33 -34
  29. package/dist/atoms/chat/index.d.ts +34 -35
  30. package/dist/atoms/chat/index.js +11 -13
  31. package/dist/atoms/globalSearch/index.cjs +1 -1
  32. package/dist/atoms/globalSearch/index.d.cts +6 -6
  33. package/dist/atoms/globalSearch/index.d.ts +1 -1
  34. package/dist/atoms/globalSearch/index.js +1 -1
  35. package/dist/atoms/org/index.cjs +2 -2
  36. package/dist/atoms/org/index.d.cts +16 -16
  37. package/dist/atoms/org/index.d.ts +1 -1
  38. package/dist/atoms/org/index.js +2 -2
  39. package/dist/atoms/search/index.cjs +5 -5
  40. package/dist/atoms/search/index.d.cts +14 -14
  41. package/dist/atoms/search/index.d.ts +14 -14
  42. package/dist/atoms/search/index.js +5 -5
  43. package/dist/atoms/search/utils.cjs +1 -1
  44. package/dist/atoms/search/utils.js +1 -1
  45. package/dist/{cdnContext-KMAzFHrZ.cjs → cdnContext-B9s1XSTE.cjs} +2 -2
  46. package/dist/{cdnContext-BJZSYlsP.js → cdnContext-BKQT9bPr.js} +2 -2
  47. package/dist/{chat-yICI8tzz.cjs → chat-B87y65R0.cjs} +4 -5
  48. package/dist/chat-DfVncvc2.js +226 -0
  49. package/dist/chatState-AYi1RPOJ.js +33 -0
  50. package/dist/{chatState-BRYkF2g2.cjs → chatState-COd-Dczh.cjs} +3 -4
  51. package/dist/config/index.d.cts +4 -4
  52. package/dist/config/index.d.ts +4 -4
  53. package/dist/config/locators/components/chat/index.d.cts +1 -1
  54. package/dist/config/locators/components/chat/index.d.ts +1 -1
  55. package/dist/config/locators/components/common/index.d.cts +1 -1
  56. package/dist/config/locators/components/common/index.d.ts +1 -1
  57. package/dist/config/locators/components/index.d.cts +1 -1
  58. package/dist/config/locators/components/index.d.ts +1 -1
  59. package/dist/config/locators/index.d.cts +4 -4
  60. package/dist/config/locators/index.d.ts +4 -4
  61. package/dist/contexts/amplitudeContext/index.cjs +13 -12
  62. package/dist/contexts/amplitudeContext/index.d.cts +11 -2
  63. package/dist/contexts/amplitudeContext/index.d.ts +11 -2
  64. package/dist/contexts/amplitudeContext/index.js +12 -10
  65. package/dist/contexts/cdnContext/index.cjs +2 -2
  66. package/dist/contexts/cdnContext/index.js +2 -2
  67. package/dist/contexts/enviveConfigContext/index.cjs +2 -2
  68. package/dist/contexts/enviveConfigContext/index.js +2 -2
  69. package/dist/contexts/enviveCssContext/index.cjs +8 -8
  70. package/dist/contexts/enviveCssContext/index.js +8 -8
  71. package/dist/contexts/featureFlagContext/index.cjs +3 -3
  72. package/dist/contexts/featureFlagContext/index.js +3 -3
  73. package/dist/contexts/featureFlagServiceContext/index.cjs +2 -2
  74. package/dist/contexts/featureFlagServiceContext/index.d.cts +1 -1
  75. package/dist/contexts/featureFlagServiceContext/index.d.ts +1 -1
  76. package/dist/contexts/featureFlagServiceContext/index.js +2 -2
  77. package/dist/contexts/graphqlContext/index.cjs +2 -2
  78. package/dist/contexts/graphqlContext/index.d.cts +1 -1
  79. package/dist/contexts/graphqlContext/index.js +2 -2
  80. package/dist/contexts/localStorageContext/index.cjs +1 -1
  81. package/dist/contexts/localStorageContext/index.js +1 -1
  82. package/dist/contexts/newOrgConfigContext/index.cjs +7 -7
  83. package/dist/contexts/newOrgConfigContext/index.d.cts +1 -1
  84. package/dist/contexts/newOrgConfigContext/index.js +7 -7
  85. package/dist/contexts/searchContext/index.cjs +14 -15
  86. package/dist/contexts/searchContext/index.js +14 -15
  87. package/dist/contexts/sessionStorageContext/index.cjs +1 -1
  88. package/dist/contexts/sessionStorageContext/index.js +1 -1
  89. package/dist/contexts/shopifyUrlContext/index.cjs +2 -2
  90. package/dist/contexts/shopifyUrlContext/index.js +2 -2
  91. package/dist/contexts/systemSettingsContext/index.cjs +2 -2
  92. package/dist/contexts/systemSettingsContext/index.d.cts +2 -2
  93. package/dist/contexts/systemSettingsContext/index.d.ts +2 -2
  94. package/dist/contexts/systemSettingsContext/index.js +2 -2
  95. package/dist/contexts/userIdentityContext/index.cjs +10 -12
  96. package/dist/contexts/userIdentityContext/index.js +8 -10
  97. package/dist/{domObserver-B19-69gW.js → domObserver-CVhsCSkS.js} +1 -1
  98. package/dist/{domObserver-CwieVNgj.cjs → domObserver-LCBj1xw4.cjs} +1 -1
  99. package/dist/{enviveConfig-u50Rpz-G.cjs → enviveConfig-D3hmiaPh.cjs} +1 -1
  100. package/dist/{enviveConfig-Be2kZE7j.js → enviveConfig-DyvNVrxm.js} +1 -1
  101. package/dist/{enviveConfigContext-kQfHEGdJ.cjs → enviveConfigContext-BADXcRZr.cjs} +2 -2
  102. package/dist/{enviveConfigContext-1oiQuocd.js → enviveConfigContext-D8ijWYZf.js} +2 -2
  103. package/dist/{featureFlagServiceContext-B7je7VZV.d.cts → featureFlagServiceContext-ClnlCJV5.d.cts} +1 -1
  104. package/dist/{featureFlagServiceContext-DiYIv0jI.d.ts → featureFlagServiceContext-CyPGEe2d.d.ts} +1 -1
  105. package/dist/{featureFlagServiceContext-pPneufeB.cjs → featureFlagServiceContext-DQYo0d6Q.cjs} +1 -1
  106. package/dist/{featureFlagServiceContext-CPsygiHO.js → featureFlagServiceContext-GIO9xKV0.js} +1 -1
  107. package/dist/{globalSearch-OiF96VLG.cjs → globalSearch-Cpc8egsM.cjs} +1 -1
  108. package/dist/{globalSearch-B_v9qfCT.js → globalSearch-nmrfGLOn.js} +1 -1
  109. package/dist/{graphqlContext-BVFRNIdi.cjs → graphqlContext-BXdtsubh.cjs} +2 -2
  110. package/dist/{graphqlContext-D_Wp0LEl.js → graphqlContext-i_3n2qoK.js} +2 -2
  111. package/dist/hooks/AmplitudeOperations/index.cjs +12 -10
  112. package/dist/hooks/AmplitudeOperations/index.js +12 -10
  113. package/dist/hooks/AppDetails/index.cjs +11 -13
  114. package/dist/hooks/AppDetails/index.js +11 -13
  115. package/dist/hooks/CdnOperations/index.cjs +2 -2
  116. package/dist/hooks/CdnOperations/index.d.ts +1 -1
  117. package/dist/hooks/CdnOperations/index.js +2 -2
  118. package/dist/hooks/ChatToggle/index.cjs +16 -14
  119. package/dist/hooks/ChatToggle/index.js +15 -13
  120. package/dist/hooks/ChatToggleAnalytics/index.cjs +14 -12
  121. package/dist/hooks/ChatToggleAnalytics/index.js +14 -12
  122. package/dist/hooks/ElementObserver/index.cjs +1 -1
  123. package/dist/hooks/ElementObserver/index.d.cts +1 -1
  124. package/dist/hooks/ElementObserver/index.d.ts +1 -1
  125. package/dist/hooks/ElementObserver/index.js +1 -1
  126. package/dist/hooks/GrabAndScroll/index.d.cts +2 -2
  127. package/dist/hooks/GrabAndScroll/index.d.ts +2 -2
  128. package/dist/hooks/GraphQLConfig/index.cjs +3 -3
  129. package/dist/hooks/GraphQLConfig/index.js +3 -3
  130. package/dist/hooks/IdentifyUser/index.cjs +10 -12
  131. package/dist/hooks/IdentifyUser/index.d.ts +1 -1
  132. package/dist/hooks/IdentifyUser/index.js +9 -11
  133. package/dist/hooks/ImageResolver/index.cjs +1 -1
  134. package/dist/hooks/ImageResolver/index.js +1 -1
  135. package/dist/hooks/Intersection/index.cjs +1 -1
  136. package/dist/hooks/Intersection/index.js +1 -1
  137. package/dist/hooks/LocalStorageOperations/index.cjs +1 -1
  138. package/dist/hooks/LocalStorageOperations/index.js +1 -1
  139. package/dist/hooks/NewOrgConfig/index.cjs +8 -8
  140. package/dist/hooks/NewOrgConfig/index.d.cts +2 -2
  141. package/dist/hooks/NewOrgConfig/index.d.ts +2 -2
  142. package/dist/hooks/NewOrgConfig/index.js +8 -8
  143. package/dist/hooks/Search/index.cjs +19 -17
  144. package/dist/hooks/Search/index.js +19 -17
  145. package/dist/hooks/SearchOperations/index.cjs +15 -16
  146. package/dist/hooks/SearchOperations/index.js +15 -16
  147. package/dist/hooks/SessionStorageOperations/index.cjs +1 -1
  148. package/dist/hooks/SessionStorageOperations/index.js +1 -1
  149. package/dist/hooks/ShopifyUrlOperations/index.cjs +2 -2
  150. package/dist/hooks/ShopifyUrlOperations/index.js +2 -2
  151. package/dist/hooks/SystemSettingsContext/index.cjs +2 -2
  152. package/dist/hooks/SystemSettingsContext/index.d.cts +2 -2
  153. package/dist/hooks/SystemSettingsContext/index.d.ts +4 -4
  154. package/dist/hooks/SystemSettingsContext/index.js +2 -2
  155. package/dist/hooks/TrackComponentVisibleEvent/index.cjs +13 -11
  156. package/dist/hooks/TrackComponentVisibleEvent/index.js +13 -11
  157. package/dist/hooks/UpdateAnalyticsProps/index.cjs +15 -13
  158. package/dist/hooks/UpdateAnalyticsProps/index.js +12 -10
  159. package/dist/{index-CAhGZxMI.d.ts → index-5li6ZMDu.d.ts} +1 -1
  160. package/dist/{index-ca7Qn8o0.d.cts → index-BbqT4BQv.d.cts} +1 -1
  161. package/dist/{index-w64il54a.d.cts → index-CAJq_8bO.d.cts} +1 -1
  162. package/dist/{index-BQpWG3Jm.d.cts → index-ChiZg0yw.d.cts} +1 -1
  163. package/dist/{index-DNccxbJi.d.ts → index-CsmO1rDH.d.ts} +1 -1
  164. package/dist/{index-Dgu085Lu.d.ts → index-CuihhoIF.d.ts} +2 -2
  165. package/dist/{index-BR1G8yyg.d.ts → index-DtzPIcQp.d.ts} +1 -1
  166. package/dist/{index-ZQMda2Iu.d.ts → index-bEjLKG_Q.d.ts} +1 -1
  167. package/dist/{index-DiIHuPq2.d.ts → index-jFQefHda.d.ts} +1 -1
  168. package/dist/{index-BO-ZLYtR.d.ts → index-mv7KvWDq.d.ts} +1 -1
  169. package/dist/{index-ClVBVK15.d.cts → index-npqPeJ1g.d.cts} +1 -1
  170. package/dist/interceptors/index.d.ts +1 -1
  171. package/dist/{localStorageContext-Bb2b_3ue.cjs → localStorageContext-CMQMTX56.cjs} +1 -1
  172. package/dist/{localStorageContext-D2uXKahw.js → localStorageContext-znToxGBM.js} +1 -1
  173. package/dist/{newOrgConfigAtom-Dsk0fJNR.js → newOrgConfigAtom-CKuuohFM.js} +1 -1
  174. package/dist/{newOrgConfigAtom-hs5A1pbZ.cjs → newOrgConfigAtom-Cy66eryV.cjs} +1 -1
  175. package/dist/{newOrgConfigContext-Dn9l1f9w.js → newOrgConfigContext-UdjemITl.js} +5 -5
  176. package/dist/{newOrgConfigContext-DkBvmY0p.cjs → newOrgConfigContext-kCipbRua.cjs} +5 -5
  177. package/dist/{nodeSelector-0gJ8Xayf.d.ts → nodeSelector-BAKg1h_y.d.ts} +1 -1
  178. package/dist/{nodeSelector-Cj-Xl1LP.d.cts → nodeSelector-BYEAyrsj.d.cts} +1 -1
  179. package/dist/org-D_QTp1ex.js +32 -0
  180. package/dist/org-DnpLYVzD.cjs +111 -0
  181. package/dist/{search-jNTQGSyl.js → search-CP6Tnjsb.js} +4 -4
  182. package/dist/{search-D-BGpGJt.cjs → search-JN-IYDIE.cjs} +4 -4
  183. package/dist/{searchContext-C75BHjlY.cjs → searchContext-BrymLMqU.cjs} +5 -5
  184. package/dist/{searchContext-DjcqQsxp.js → searchContext-CgXwm6aL.js} +5 -5
  185. package/dist/{searchServiceAdapter-BSPZOg1r.js → searchServiceAdapter-B0h7psvh.js} +1 -1
  186. package/dist/{searchServiceAdapter-DrjFCiw8.cjs → searchServiceAdapter-BclWy4fE.cjs} +1 -1
  187. package/dist/{sessionStorageContext-ByaTsDUC.cjs → sessionStorageContext-BuWrJQwc.cjs} +1 -1
  188. package/dist/{sessionStorageContext-DKE97oMv.js → sessionStorageContext-DvFHbk81.js} +1 -1
  189. package/dist/{shopifyUrlContext-Ba6MQdNV.cjs → shopifyUrlContext-COc1eDR_.cjs} +2 -2
  190. package/dist/{shopifyUrlContext-BI3fVtA5.js → shopifyUrlContext-CToAt_98.js} +2 -2
  191. package/dist/{systemSettingsContext-DTdzjE_O.js → systemSettingsContext-B8a7vEqE.js} +2 -2
  192. package/dist/{systemSettingsContext-CSXsgBiG.cjs → systemSettingsContext-D-4ma13L.cjs} +2 -2
  193. package/dist/types/index.d.ts +1 -1
  194. package/dist/{urlsParser-C-Vzs--G.cjs → urlsParser-Dax4iVNC.cjs} +1 -1
  195. package/dist/{urlsParser-G7Ocwg0M.js → urlsParser-NAp2LwWP.js} +1 -1
  196. package/dist/{useAppDetails-Cq8TbvkX.cjs → useAppDetails-BkTsIODv.cjs} +7 -7
  197. package/dist/{useAppDetails-DjdYWTqz.js → useAppDetails-HS5GtU5O.js} +4 -4
  198. package/dist/{useGraphQLConfig-Dy0ml9xw.cjs → useGraphQLConfig-DCd-kR81.cjs} +2 -2
  199. package/dist/{useGraphQLConfig-nY5CE8kj.js → useGraphQLConfig-arTbYTKS.js} +2 -2
  200. package/dist/{useIntersection-BQMfiS4x.cjs → useIntersection-BcBCa890.cjs} +1 -1
  201. package/dist/{useIntersection-D-ol9eH8.js → useIntersection-BkMkuJcZ.js} +1 -1
  202. package/dist/{utils-sosM0bEk.d.ts → utils-BitIIghf.d.ts} +1 -1
  203. package/dist/{utils-BBICrPjW.cjs → utils-CqVRbvfN.cjs} +1 -1
  204. package/dist/utils-CxDOv-yL.js +607 -0
  205. package/dist/{utils-w4-xONRA.js → utils-DQhbbAnt.js} +1 -1
  206. package/dist/utils-DucG4gQ7.cjs +716 -0
  207. package/package.json +2 -2
  208. package/src/application/commerce-api.ts +2 -0
  209. package/src/application/utils/analyticsUtils.ts +31 -16
  210. package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +1 -1
  211. package/src/atoms/chat/chatState.ts +12 -7
  212. package/src/atoms/chat/replies.ts +42 -40
  213. package/src/contexts/amplitudeContext/amplitudeContext.tsx +116 -130
  214. package/dist/amplitudeContext-CMTvCsJC.d.ts +0 -52
  215. package/dist/amplitudeContext-ZkerrMUa.d.cts +0 -52
  216. package/dist/amplitudeTrackEventAtom-BBkB1LPQ.cjs +0 -15
  217. package/dist/amplitudeTrackEventAtom-yP38BuDB.js +0 -8
  218. package/dist/chat-DYD6B6em.js +0 -227
  219. package/dist/chatState-DRKB9bqM.js +0 -34
  220. package/dist/org-C2kLSSe9.cjs +0 -111
  221. package/dist/org-CIczyLRP.js +0 -32
  222. package/dist/utils-DqNhRm2b.cjs +0 -1546
  223. package/dist/utils-IogJwDB9.js +0 -1364
  224. /package/dist/{featureFlagServiceContext-DgoR6euC.js → featureFlagServiceContext-CISyb90N.js} +0 -0
  225. /package/dist/{featureFlagServiceContext-b-rYgf0u.cjs → featureFlagServiceContext-Csgo-MUv.cjs} +0 -0
@@ -1,4 +1,4 @@
1
- import { useAmplitude } from "./utils-IogJwDB9.js";
1
+ import { useAmplitude } from "./amplitudeContext-Bh4SVVse.js";
2
2
  import { useCallback, useState } from "react";
3
3
 
4
4
  //#region src/hooks/AmplitudeOperations/useAmplitudeOperations.ts
@@ -31,4 +31,4 @@ const useAmplitudeTracking = () => {
31
31
 
32
32
  //#endregion
33
33
  export { useAmplitudeTracking };
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW1wbGl0dWRlT3BlcmF0aW9ucy1EcHA5MVhXVi5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvQW1wbGl0dWRlT3BlcmF0aW9ucy91c2VBbXBsaXR1ZGVPcGVyYXRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdAZW52aXZlLWFpL3R5cGVzJztcbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0L2FtcGxpdHVkZUNvbnRleHQnO1xuXG5leHBvcnQgY29uc3QgdXNlQW1wbGl0dWRlVHJhY2tpbmcgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCwgaXNSZWFkeSB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxFcnJvciB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0IHRyYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSwgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PiB7XG4gICAgICBpZiAoIWlzUmVhZHkpIHJldHVybjtcblxuICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgIHNldEVycm9yKG51bGwpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0cmFja0V2ZW50KHsgZXZlbnROYW1lLCBldmVudFByb3BzIH0pO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyIDogbmV3IEVycm9yKCdUcmFja2luZyBmYWlsZWQnKSk7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3RyYWNrRXZlbnQsIGlzUmVhZHldLFxuICApO1xuXG4gIHJldHVybiB7IHRyYWNrLCBsb2FkaW5nLCBlcnJvciwgaXNSZWFkeSB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUlBLE1BQWEsNkJBQTZCO0NBQ3hDLE1BQU0sRUFBRSxZQUFZLFlBQVksY0FBYztDQUM5QyxNQUFNLENBQUMsU0FBUyxjQUFjLFNBQVMsTUFBTTtDQUM3QyxNQUFNLENBQUMsT0FBTyxZQUFZLFNBQXVCLEtBQUs7QUFxQnRELFFBQU87RUFBRSxPQW5CSyxZQUNaLE9BQU8sV0FBbUMsZUFBeUM7QUFDakYsT0FBSSxDQUFDLFFBQVM7QUFFZCxjQUFXLEtBQUs7QUFDaEIsWUFBUyxLQUFLO0FBRWQsT0FBSTtBQUNGLFVBQU0sV0FBVztLQUFFO0tBQVc7S0FBWSxDQUFDO1lBQ3BDLEtBQUs7QUFDWixhQUFTLGVBQWUsUUFBUSxzQkFBTSxJQUFJLE1BQU0sa0JBQWtCLENBQUM7QUFDbkUsVUFBTTthQUNFO0FBQ1IsZUFBVyxNQUFNOztLQUdyQixDQUFDLFlBQVksUUFBUSxDQUN0QjtFQUVlO0VBQVM7RUFBTztFQUFTIn0=
34
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW1wbGl0dWRlT3BlcmF0aW9ucy1DYUE1alRDcS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvQW1wbGl0dWRlT3BlcmF0aW9ucy91c2VBbXBsaXR1ZGVPcGVyYXRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdAZW52aXZlLWFpL3R5cGVzJztcbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0L2FtcGxpdHVkZUNvbnRleHQnO1xuXG5leHBvcnQgY29uc3QgdXNlQW1wbGl0dWRlVHJhY2tpbmcgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCwgaXNSZWFkeSB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxFcnJvciB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0IHRyYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSwgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PiB7XG4gICAgICBpZiAoIWlzUmVhZHkpIHJldHVybjtcblxuICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgIHNldEVycm9yKG51bGwpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0cmFja0V2ZW50KHsgZXZlbnROYW1lLCBldmVudFByb3BzIH0pO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyIDogbmV3IEVycm9yKCdUcmFja2luZyBmYWlsZWQnKSk7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3RyYWNrRXZlbnQsIGlzUmVhZHldLFxuICApO1xuXG4gIHJldHVybiB7IHRyYWNrLCBsb2FkaW5nLCBlcnJvciwgaXNSZWFkeSB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUlBLE1BQWEsNkJBQTZCO0NBQ3hDLE1BQU0sRUFBRSxZQUFZLFlBQVksY0FBYztDQUM5QyxNQUFNLENBQUMsU0FBUyxjQUFjLFNBQVMsTUFBTTtDQUM3QyxNQUFNLENBQUMsT0FBTyxZQUFZLFNBQXVCLEtBQUs7QUFxQnRELFFBQU87RUFBRSxPQW5CSyxZQUNaLE9BQU8sV0FBbUMsZUFBeUM7QUFDakYsT0FBSSxDQUFDLFFBQVM7QUFFZCxjQUFXLEtBQUs7QUFDaEIsWUFBUyxLQUFLO0FBRWQsT0FBSTtBQUNGLFVBQU0sV0FBVztLQUFFO0tBQVc7S0FBWSxDQUFDO1lBQ3BDLEtBQUs7QUFDWixhQUFTLGVBQWUsUUFBUSxzQkFBTSxJQUFJLE1BQU0sa0JBQWtCLENBQUM7QUFDbkUsVUFBTTthQUNFO0FBQ1IsZUFBVyxNQUFNOztLQUdyQixDQUFDLFlBQVksUUFBUSxDQUN0QjtFQUVlO0VBQVM7RUFBTztFQUFTIn0=
@@ -1,11 +1,11 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_utils = require('./utils-DqNhRm2b.cjs');
2
+ const require_amplitudeContext = require('./amplitudeContext-CjFkl5yr.cjs');
3
3
  let react = require("react");
4
4
  react = require_chunk.__toESM(react);
5
5
 
6
6
  //#region src/hooks/AmplitudeOperations/useAmplitudeOperations.ts
7
7
  const useAmplitudeTracking = () => {
8
- const { trackEvent, isReady } = require_utils.useAmplitude();
8
+ const { trackEvent, isReady } = require_amplitudeContext.useAmplitude();
9
9
  const [loading, setLoading] = (0, react.useState)(false);
10
10
  const [error, setError] = (0, react.useState)(null);
11
11
  return {
@@ -38,4 +38,4 @@ Object.defineProperty(exports, 'useAmplitudeTracking', {
38
38
  return useAmplitudeTracking;
39
39
  }
40
40
  });
41
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW1wbGl0dWRlT3BlcmF0aW9ucy1CRWhNQ090eC5janMiLCJuYW1lcyI6WyJ1c2VBbXBsaXR1ZGUiXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvQW1wbGl0dWRlT3BlcmF0aW9ucy91c2VBbXBsaXR1ZGVPcGVyYXRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdAZW52aXZlLWFpL3R5cGVzJztcbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0L2FtcGxpdHVkZUNvbnRleHQnO1xuXG5leHBvcnQgY29uc3QgdXNlQW1wbGl0dWRlVHJhY2tpbmcgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCwgaXNSZWFkeSB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxFcnJvciB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0IHRyYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSwgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PiB7XG4gICAgICBpZiAoIWlzUmVhZHkpIHJldHVybjtcblxuICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgIHNldEVycm9yKG51bGwpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0cmFja0V2ZW50KHsgZXZlbnROYW1lLCBldmVudFByb3BzIH0pO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyIDogbmV3IEVycm9yKCdUcmFja2luZyBmYWlsZWQnKSk7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3RyYWNrRXZlbnQsIGlzUmVhZHldLFxuICApO1xuXG4gIHJldHVybiB7IHRyYWNrLCBsb2FkaW5nLCBlcnJvciwgaXNSZWFkeSB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBSUEsTUFBYSw2QkFBNkI7Q0FDeEMsTUFBTSxFQUFFLFlBQVksWUFBWUEsNEJBQWM7Q0FDOUMsTUFBTSxDQUFDLFNBQVMsa0NBQXVCLE1BQU07Q0FDN0MsTUFBTSxDQUFDLE9BQU8sZ0NBQW1DLEtBQUs7QUFxQnRELFFBQU87RUFBRSw4QkFsQlAsT0FBTyxXQUFtQyxlQUF5QztBQUNqRixPQUFJLENBQUMsUUFBUztBQUVkLGNBQVcsS0FBSztBQUNoQixZQUFTLEtBQUs7QUFFZCxPQUFJO0FBQ0YsVUFBTSxXQUFXO0tBQUU7S0FBVztLQUFZLENBQUM7WUFDcEMsS0FBSztBQUNaLGFBQVMsZUFBZSxRQUFRLHNCQUFNLElBQUksTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxVQUFNO2FBQ0U7QUFDUixlQUFXLE1BQU07O0tBR3JCLENBQUMsWUFBWSxRQUFRLENBQ3RCO0VBRWU7RUFBUztFQUFPO0VBQVMifQ==
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW1wbGl0dWRlT3BlcmF0aW9ucy1DdWZGSkxrbi5janMiLCJuYW1lcyI6WyJ1c2VBbXBsaXR1ZGUiXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvQW1wbGl0dWRlT3BlcmF0aW9ucy91c2VBbXBsaXR1ZGVPcGVyYXRpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tICdAZW52aXZlLWFpL3R5cGVzJztcbmltcG9ydCB7IHVzZVN0YXRlLCB1c2VDYWxsYmFjayB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZUFtcGxpdHVkZSB9IGZyb20gJ3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0L2FtcGxpdHVkZUNvbnRleHQnO1xuXG5leHBvcnQgY29uc3QgdXNlQW1wbGl0dWRlVHJhY2tpbmcgPSAoKSA9PiB7XG4gIGNvbnN0IHsgdHJhY2tFdmVudCwgaXNSZWFkeSB9ID0gdXNlQW1wbGl0dWRlKCk7XG4gIGNvbnN0IFtsb2FkaW5nLCBzZXRMb2FkaW5nXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW2Vycm9yLCBzZXRFcnJvcl0gPSB1c2VTdGF0ZTxFcnJvciB8IG51bGw+KG51bGwpO1xuXG4gIGNvbnN0IHRyYWNrID0gdXNlQ2FsbGJhY2soXG4gICAgYXN5bmMgKGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSwgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PiB7XG4gICAgICBpZiAoIWlzUmVhZHkpIHJldHVybjtcblxuICAgICAgc2V0TG9hZGluZyh0cnVlKTtcbiAgICAgIHNldEVycm9yKG51bGwpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0cmFja0V2ZW50KHsgZXZlbnROYW1lLCBldmVudFByb3BzIH0pO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIHNldEVycm9yKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyIDogbmV3IEVycm9yKCdUcmFja2luZyBmYWlsZWQnKSk7XG4gICAgICAgIHRocm93IGVycjtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIHNldExvYWRpbmcoZmFsc2UpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW3RyYWNrRXZlbnQsIGlzUmVhZHldLFxuICApO1xuXG4gIHJldHVybiB7IHRyYWNrLCBsb2FkaW5nLCBlcnJvciwgaXNSZWFkeSB9O1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBSUEsTUFBYSw2QkFBNkI7Q0FDeEMsTUFBTSxFQUFFLFlBQVksWUFBWUEsdUNBQWM7Q0FDOUMsTUFBTSxDQUFDLFNBQVMsa0NBQXVCLE1BQU07Q0FDN0MsTUFBTSxDQUFDLE9BQU8sZ0NBQW1DLEtBQUs7QUFxQnRELFFBQU87RUFBRSw4QkFsQlAsT0FBTyxXQUFtQyxlQUF5QztBQUNqRixPQUFJLENBQUMsUUFBUztBQUVkLGNBQVcsS0FBSztBQUNoQixZQUFTLEtBQUs7QUFFZCxPQUFJO0FBQ0YsVUFBTSxXQUFXO0tBQUU7S0FBVztLQUFZLENBQUM7WUFDcEMsS0FBSztBQUNaLGFBQVMsZUFBZSxRQUFRLHNCQUFNLElBQUksTUFBTSxrQkFBa0IsQ0FBQztBQUNuRSxVQUFNO2FBQ0U7QUFDUixlQUFXLE1BQU07O0tBR3JCLENBQUMsWUFBWSxRQUFRLENBQ3RCO0VBRWU7RUFBUztFQUFPO0VBQVMifQ==
@@ -1,4 +1,4 @@
1
- import { useNewOrgConfigContext } from "./newOrgConfigContext-Dn9l1f9w.js";
1
+ import { useNewOrgConfigContext } from "./newOrgConfigContext-UdjemITl.js";
2
2
 
3
3
  //#region src/hooks/NewOrgConfig/useNewOrgConfig.ts
4
4
  const useNewOrgConfig = () => {
@@ -7,4 +7,4 @@ const useNewOrgConfig = () => {
7
7
 
8
8
  //#endregion
9
9
  export { useNewOrgConfig };
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV3T3JnQ29uZmlnLUN4M1I3Rk02LmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy9ob29rcy9OZXdPcmdDb25maWcvdXNlTmV3T3JnQ29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZU5ld09yZ0NvbmZpZ0NvbnRleHQgfSBmcm9tIFwic3JjL2NvbnRleHRzL25ld09yZ0NvbmZpZ0NvbnRleHQvbmV3T3JnQ29uZmlnQ29udGV4dFwiO1xuXG5leHBvcnQgY29uc3QgdXNlTmV3T3JnQ29uZmlnID0gKCkgPT4ge1xuICBjb25zdCBjb25maWcgPSB1c2VOZXdPcmdDb25maWdDb250ZXh0KCk7XG5cbiAgcmV0dXJuIGNvbmZpZztcbn07XG4iXSwibWFwcGluZ3MiOiI7OztBQUVBLE1BQWEsd0JBQXdCO0FBR25DLFFBRmUsd0JBQXdCIn0=
10
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV3T3JnQ29uZmlnLUJuTFBsVTZaLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uL3NyYy9ob29rcy9OZXdPcmdDb25maWcvdXNlTmV3T3JnQ29uZmlnLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZU5ld09yZ0NvbmZpZ0NvbnRleHQgfSBmcm9tIFwic3JjL2NvbnRleHRzL25ld09yZ0NvbmZpZ0NvbnRleHQvbmV3T3JnQ29uZmlnQ29udGV4dFwiO1xuXG5leHBvcnQgY29uc3QgdXNlTmV3T3JnQ29uZmlnID0gKCkgPT4ge1xuICBjb25zdCBjb25maWcgPSB1c2VOZXdPcmdDb25maWdDb250ZXh0KCk7XG5cbiAgcmV0dXJuIGNvbmZpZztcbn07XG4iXSwibWFwcGluZ3MiOiI7OztBQUVBLE1BQWEsd0JBQXdCO0FBR25DLFFBRmUsd0JBQXdCIn0=
@@ -1,4 +1,4 @@
1
- const require_newOrgConfigContext = require('./newOrgConfigContext-DkBvmY0p.cjs');
1
+ const require_newOrgConfigContext = require('./newOrgConfigContext-kCipbRua.cjs');
2
2
 
3
3
  //#region src/hooks/NewOrgConfig/useNewOrgConfig.ts
4
4
  const useNewOrgConfig = () => {
@@ -12,4 +12,4 @@ Object.defineProperty(exports, 'useNewOrgConfig', {
12
12
  return useNewOrgConfig;
13
13
  }
14
14
  });
15
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV3T3JnQ29uZmlnLURSczlTazRFLmNqcyIsIm5hbWVzIjpbInVzZU5ld09yZ0NvbmZpZ0NvbnRleHQiXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvTmV3T3JnQ29uZmlnL3VzZU5ld09yZ0NvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VOZXdPcmdDb25maWdDb250ZXh0IH0gZnJvbSBcInNyYy9jb250ZXh0cy9uZXdPcmdDb25maWdDb250ZXh0L25ld09yZ0NvbmZpZ0NvbnRleHRcIjtcblxuZXhwb3J0IGNvbnN0IHVzZU5ld09yZ0NvbmZpZyA9ICgpID0+IHtcbiAgY29uc3QgY29uZmlnID0gdXNlTmV3T3JnQ29uZmlnQ29udGV4dCgpO1xuXG4gIHJldHVybiBjb25maWc7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFFQSxNQUFhLHdCQUF3QjtBQUduQyxRQUZlQSxvREFBd0IifQ==
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTmV3T3JnQ29uZmlnLUNLSE82UVdfLmNqcyIsIm5hbWVzIjpbInVzZU5ld09yZ0NvbmZpZ0NvbnRleHQiXSwic291cmNlcyI6WyIuLi9zcmMvaG9va3MvTmV3T3JnQ29uZmlnL3VzZU5ld09yZ0NvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VOZXdPcmdDb25maWdDb250ZXh0IH0gZnJvbSBcInNyYy9jb250ZXh0cy9uZXdPcmdDb25maWdDb250ZXh0L25ld09yZ0NvbmZpZ0NvbnRleHRcIjtcblxuZXhwb3J0IGNvbnN0IHVzZU5ld09yZ0NvbmZpZyA9ICgpID0+IHtcbiAgY29uc3QgY29uZmlnID0gdXNlTmV3T3JnQ29uZmlnQ29udGV4dCgpO1xuXG4gIHJldHVybiBjb25maWc7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFFQSxNQUFhLHdCQUF3QjtBQUduQyxRQUZlQSxvREFBd0IifQ==
@@ -1,7 +1,7 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
2
  const require_dist = require('./dist-B7BErEyV.cjs');
3
- const require_utils = require('./utils-DqNhRm2b.cjs');
4
- const require_useIntersection = require('./useIntersection-BQMfiS4x.cjs');
3
+ const require_amplitudeContext = require('./amplitudeContext-CjFkl5yr.cjs');
4
+ const require_useIntersection = require('./useIntersection-BcBCa890.cjs');
5
5
  let react = require("react");
6
6
  react = require_chunk.__toESM(react);
7
7
 
@@ -17,7 +17,7 @@ react = require_chunk.__toESM(react);
17
17
  const useTrackComponentVisibleEvent = (component, element, eventProps, eventName = require_dist.SpiffyMetricsEventName.ChatComponentVisible) => {
18
18
  const isVisible = require_useIntersection.useIntersection(element, "0px");
19
19
  const hasTrackedEvent = (0, react.useRef)(false);
20
- const { trackEvent } = require_utils.useAmplitude();
20
+ const { trackEvent } = require_amplitudeContext.useAmplitude();
21
21
  const componentProps = (() => {
22
22
  if (eventName === require_dist.SpiffyMetricsEventName.ChatComponentVisible) return {
23
23
  chat_component: component,
@@ -57,4 +57,4 @@ Object.defineProperty(exports, 'useTrackComponentVisibleEvent', {
57
57
  return useTrackComponentVisibleEvent;
58
58
  }
59
59
  });
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhY2tDb21wb25lbnRWaXNpYmxlRXZlbnQtT0FGUDRDWjYuY2pzIiwibmFtZXMiOlsiU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSIsInVzZUludGVyc2VjdGlvbiIsInVzZUFtcGxpdHVkZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9ob29rcy9UcmFja0NvbXBvbmVudFZpc2libGVFdmVudC91c2VUcmFja0NvbXBvbmVudFZpc2libGVFdmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50ZXJzZWN0aW9uIH0gZnJvbSAnc3JjL2hvb2tzL0ludGVyc2VjdGlvbi91c2VJbnRlcnNlY3Rpb24nO1xuaW1wb3J0IHsgdXNlQW1wbGl0dWRlIH0gZnJvbSAnc3JjL2NvbnRleHRzL2FtcGxpdHVkZUNvbnRleHQvYW1wbGl0dWRlQ29udGV4dCc7XG5pbXBvcnQgeyBTcGlmZnlNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlXaWRnZXRzIH0gZnJvbSAnQGVudml2ZS1haS90eXBlcyc7XG5cbi8qKlxuICogVHJhY2tzIGEgY29tcG9uZW50IGFuZCBsb2dzIGFuIGV2ZW50IHRvIEFtcGxpdHVkZSB3aGVuIHRoZSBjb21wb25lbnQgaXMgdmlzaWJsZS5cbiAqXG4gKiBAcGFyYW0gY29tcG9uZW50IC0gVGhlIGNvbXBvbmVudCB0byB0cmFjay5cbiAqIEBwYXJhbSBlbGVtZW50IC0gVGhlIGVsZW1lbnQgdG8gdHJhY2sgdmlzaWJpbGl0eSBvZi5cbiAqIEBwYXJhbSBldmVudFByb3BzIC0gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIHRvIGluY2x1ZGUgd2l0aCB0aGUgZXZlbnQuXG4gKiBAcGFyYW0gZXZlbnROYW1lIC0gVGhlIEFtcGxpdHVkZSBldmVudCBuYW1lIHRvIHRyYWNrIChkZWZhdWx0cyB0byBDaGF0Q29tcG9uZW50VmlzaWJsZSkuXG4gKi9cbmV4cG9ydCBjb25zdCB1c2VUcmFja0NvbXBvbmVudFZpc2libGVFdmVudCA9IChcbiAgY29tcG9uZW50OiBTcGlmZnlXaWRnZXRzLFxuICBlbGVtZW50OiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+LFxuICBldmVudFByb3BzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSA9IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUuQ2hhdENvbXBvbmVudFZpc2libGUsXG4pID0+IHtcbiAgY29uc3QgaXNWaXNpYmxlID0gdXNlSW50ZXJzZWN0aW9uKGVsZW1lbnQsICcwcHgnKTtcbiAgY29uc3QgaGFzVHJhY2tlZEV2ZW50ID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgeyB0cmFja0V2ZW50IH0gPSB1c2VBbXBsaXR1ZGUoKTtcblxuICBjb25zdCBjb21wb25lbnRQcm9wcyA9ICgoKSA9PiB7XG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50VmlzaWJsZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY2hhdF9jb21wb25lbnQ6IGNvbXBvbmVudCxcbiAgICAgICAgLi4uZXZlbnRQcm9wcyxcbiAgICAgIH07XG4gICAgfVxuICAgIGlmIChldmVudE5hbWUgPT09IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUuU2VhcmNoQ29tcG9uZW50VmlzaWJsZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc2VhcmNoX2NvbXBvbmVudDogY29tcG9uZW50LFxuICAgICAgICAuLi5ldmVudFByb3BzLFxuICAgICAgfTtcbiAgICB9XG4gICAgLy8gRGVmYXVsdCBjYXNlIGZvciBvdGhlciBldmVudCB0eXBlc1xuICAgIHJldHVybiB7XG4gICAgICBjb21wb25lbnQsXG4gICAgICAuLi5ldmVudFByb3BzLFxuICAgIH07XG4gIH0pKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlICYmICFoYXNUcmFja2VkRXZlbnQuY3VycmVudCkge1xuICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgIGV2ZW50TmFtZSxcbiAgICAgICAgZXZlbnRQcm9wczogY29tcG9uZW50UHJvcHMsXG4gICAgICB9KTtcbiAgICAgIGhhc1RyYWNrZWRFdmVudC5jdXJyZW50ID0gdHJ1ZTtcbiAgICB9XG4gIH0sIFtpc1Zpc2libGUsIGNvbXBvbmVudCwgZXZlbnRQcm9wcywgZXZlbnROYW1lLCBjb21wb25lbnRQcm9wcywgdHJhY2tFdmVudF0pO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQWFBLE1BQWEsaUNBQ1gsV0FDQSxTQUNBLFlBQ0EsWUFBb0NBLG9DQUF1Qix5QkFDeEQ7Q0FDSCxNQUFNLFlBQVlDLHdDQUFnQixTQUFTLE1BQU07Q0FDakQsTUFBTSxvQ0FBeUIsTUFBTTtDQUNyQyxNQUFNLEVBQUUsZUFBZUMsNEJBQWM7Q0FFckMsTUFBTSx3QkFBd0I7QUFDNUIsTUFBSSxjQUFjRixvQ0FBdUIscUJBQ3ZDLFFBQU87R0FDTCxnQkFBZ0I7R0FDaEIsR0FBRztHQUNKO0FBRUgsTUFBSSxjQUFjQSxvQ0FBdUIsdUJBQ3ZDLFFBQU87R0FDTCxrQkFBa0I7R0FDbEIsR0FBRztHQUNKO0FBR0gsU0FBTztHQUNMO0dBQ0EsR0FBRztHQUNKO0tBQ0M7QUFFSiw0QkFBZ0I7QUFDZCxNQUFJLGFBQWEsQ0FBQyxnQkFBZ0IsU0FBUztBQUN6QyxjQUFXO0lBQ1Q7SUFDQSxZQUFZO0lBQ2IsQ0FBQztBQUNGLG1CQUFnQixVQUFVOztJQUUzQjtFQUFDO0VBQVc7RUFBVztFQUFZO0VBQVc7RUFBZ0I7RUFBVyxDQUFDIn0=
60
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhY2tDb21wb25lbnRWaXNpYmxlRXZlbnQtQnZyZ3BKdVkuY2pzIiwibmFtZXMiOlsiU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSIsInVzZUludGVyc2VjdGlvbiIsInVzZUFtcGxpdHVkZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9ob29rcy9UcmFja0NvbXBvbmVudFZpc2libGVFdmVudC91c2VUcmFja0NvbXBvbmVudFZpc2libGVFdmVudC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWZPYmplY3QsIHVzZUVmZmVjdCwgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlSW50ZXJzZWN0aW9uIH0gZnJvbSAnc3JjL2hvb2tzL0ludGVyc2VjdGlvbi91c2VJbnRlcnNlY3Rpb24nO1xuaW1wb3J0IHsgdXNlQW1wbGl0dWRlIH0gZnJvbSAnc3JjL2NvbnRleHRzL2FtcGxpdHVkZUNvbnRleHQvYW1wbGl0dWRlQ29udGV4dCc7XG5pbXBvcnQgeyBTcGlmZnlNZXRyaWNzRXZlbnROYW1lLCBTcGlmZnlXaWRnZXRzIH0gZnJvbSAnQGVudml2ZS1haS90eXBlcyc7XG5cbi8qKlxuICogVHJhY2tzIGEgY29tcG9uZW50IGFuZCBsb2dzIGFuIGV2ZW50IHRvIEFtcGxpdHVkZSB3aGVuIHRoZSBjb21wb25lbnQgaXMgdmlzaWJsZS5cbiAqXG4gKiBAcGFyYW0gY29tcG9uZW50IC0gVGhlIGNvbXBvbmVudCB0byB0cmFjay5cbiAqIEBwYXJhbSBlbGVtZW50IC0gVGhlIGVsZW1lbnQgdG8gdHJhY2sgdmlzaWJpbGl0eSBvZi5cbiAqIEBwYXJhbSBldmVudFByb3BzIC0gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIHRvIGluY2x1ZGUgd2l0aCB0aGUgZXZlbnQuXG4gKiBAcGFyYW0gZXZlbnROYW1lIC0gVGhlIEFtcGxpdHVkZSBldmVudCBuYW1lIHRvIHRyYWNrIChkZWZhdWx0cyB0byBDaGF0Q29tcG9uZW50VmlzaWJsZSkuXG4gKi9cbmV4cG9ydCBjb25zdCB1c2VUcmFja0NvbXBvbmVudFZpc2libGVFdmVudCA9IChcbiAgY29tcG9uZW50OiBTcGlmZnlXaWRnZXRzLFxuICBlbGVtZW50OiBSZWZPYmplY3Q8SFRNTEVsZW1lbnQ+LFxuICBldmVudFByb3BzPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSA9IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUuQ2hhdENvbXBvbmVudFZpc2libGUsXG4pID0+IHtcbiAgY29uc3QgaXNWaXNpYmxlID0gdXNlSW50ZXJzZWN0aW9uKGVsZW1lbnQsICcwcHgnKTtcbiAgY29uc3QgaGFzVHJhY2tlZEV2ZW50ID0gdXNlUmVmKGZhbHNlKTtcbiAgY29uc3QgeyB0cmFja0V2ZW50IH0gPSB1c2VBbXBsaXR1ZGUoKTtcblxuICBjb25zdCBjb21wb25lbnRQcm9wcyA9ICgoKSA9PiB7XG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50VmlzaWJsZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY2hhdF9jb21wb25lbnQ6IGNvbXBvbmVudCxcbiAgICAgICAgLi4uZXZlbnRQcm9wcyxcbiAgICAgIH07XG4gICAgfVxuICAgIGlmIChldmVudE5hbWUgPT09IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUuU2VhcmNoQ29tcG9uZW50VmlzaWJsZSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc2VhcmNoX2NvbXBvbmVudDogY29tcG9uZW50LFxuICAgICAgICAuLi5ldmVudFByb3BzLFxuICAgICAgfTtcbiAgICB9XG4gICAgLy8gRGVmYXVsdCBjYXNlIGZvciBvdGhlciBldmVudCB0eXBlc1xuICAgIHJldHVybiB7XG4gICAgICBjb21wb25lbnQsXG4gICAgICAuLi5ldmVudFByb3BzLFxuICAgIH07XG4gIH0pKCk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNWaXNpYmxlICYmICFoYXNUcmFja2VkRXZlbnQuY3VycmVudCkge1xuICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgIGV2ZW50TmFtZSxcbiAgICAgICAgZXZlbnRQcm9wczogY29tcG9uZW50UHJvcHMsXG4gICAgICB9KTtcbiAgICAgIGhhc1RyYWNrZWRFdmVudC5jdXJyZW50ID0gdHJ1ZTtcbiAgICB9XG4gIH0sIFtpc1Zpc2libGUsIGNvbXBvbmVudCwgZXZlbnRQcm9wcywgZXZlbnROYW1lLCBjb21wb25lbnRQcm9wcywgdHJhY2tFdmVudF0pO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQWFBLE1BQWEsaUNBQ1gsV0FDQSxTQUNBLFlBQ0EsWUFBb0NBLG9DQUF1Qix5QkFDeEQ7Q0FDSCxNQUFNLFlBQVlDLHdDQUFnQixTQUFTLE1BQU07Q0FDakQsTUFBTSxvQ0FBeUIsTUFBTTtDQUNyQyxNQUFNLEVBQUUsZUFBZUMsdUNBQWM7Q0FFckMsTUFBTSx3QkFBd0I7QUFDNUIsTUFBSSxjQUFjRixvQ0FBdUIscUJBQ3ZDLFFBQU87R0FDTCxnQkFBZ0I7R0FDaEIsR0FBRztHQUNKO0FBRUgsTUFBSSxjQUFjQSxvQ0FBdUIsdUJBQ3ZDLFFBQU87R0FDTCxrQkFBa0I7R0FDbEIsR0FBRztHQUNKO0FBR0gsU0FBTztHQUNMO0dBQ0EsR0FBRztHQUNKO0tBQ0M7QUFFSiw0QkFBZ0I7QUFDZCxNQUFJLGFBQWEsQ0FBQyxnQkFBZ0IsU0FBUztBQUN6QyxjQUFXO0lBQ1Q7SUFDQSxZQUFZO0lBQ2IsQ0FBQztBQUNGLG1CQUFnQixVQUFVOztJQUUzQjtFQUFDO0VBQVc7RUFBVztFQUFZO0VBQVc7RUFBZ0I7RUFBVyxDQUFDIn0=
@@ -1,6 +1,6 @@
1
1
  import { SpiffyMetricsEventName } from "./dist-CtkINi1R.js";
2
- import { useAmplitude } from "./utils-IogJwDB9.js";
3
- import { useIntersection } from "./useIntersection-D-ol9eH8.js";
2
+ import { useAmplitude } from "./amplitudeContext-Bh4SVVse.js";
3
+ import { useIntersection } from "./useIntersection-BkMkuJcZ.js";
4
4
  import { useEffect, useRef } from "react";
5
5
 
6
6
  //#region src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.ts
@@ -50,4 +50,4 @@ const useTrackComponentVisibleEvent = (component, element, eventProps, eventName
50
50
 
51
51
  //#endregion
52
52
  export { useTrackComponentVisibleEvent };
53
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhY2tDb21wb25lbnRWaXNpYmxlRXZlbnQtQ0lmUlp0RnEuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzL1RyYWNrQ29tcG9uZW50VmlzaWJsZUV2ZW50L3VzZVRyYWNrQ29tcG9uZW50VmlzaWJsZUV2ZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VJbnRlcnNlY3Rpb24gfSBmcm9tICdzcmMvaG9va3MvSW50ZXJzZWN0aW9uL3VzZUludGVyc2VjdGlvbic7XG5pbXBvcnQgeyB1c2VBbXBsaXR1ZGUgfSBmcm9tICdzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dC9hbXBsaXR1ZGVDb250ZXh0JztcbmltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeVdpZGdldHMgfSBmcm9tICdAZW52aXZlLWFpL3R5cGVzJztcblxuLyoqXG4gKiBUcmFja3MgYSBjb21wb25lbnQgYW5kIGxvZ3MgYW4gZXZlbnQgdG8gQW1wbGl0dWRlIHdoZW4gdGhlIGNvbXBvbmVudCBpcyB2aXNpYmxlLlxuICpcbiAqIEBwYXJhbSBjb21wb25lbnQgLSBUaGUgY29tcG9uZW50IHRvIHRyYWNrLlxuICogQHBhcmFtIGVsZW1lbnQgLSBUaGUgZWxlbWVudCB0byB0cmFjayB2aXNpYmlsaXR5IG9mLlxuICogQHBhcmFtIGV2ZW50UHJvcHMgLSBBZGRpdGlvbmFsIHByb3BlcnRpZXMgdG8gaW5jbHVkZSB3aXRoIHRoZSBldmVudC5cbiAqIEBwYXJhbSBldmVudE5hbWUgLSBUaGUgQW1wbGl0dWRlIGV2ZW50IG5hbWUgdG8gdHJhY2sgKGRlZmF1bHRzIHRvIENoYXRDb21wb25lbnRWaXNpYmxlKS5cbiAqL1xuZXhwb3J0IGNvbnN0IHVzZVRyYWNrQ29tcG9uZW50VmlzaWJsZUV2ZW50ID0gKFxuICBjb21wb25lbnQ6IFNwaWZmeVdpZGdldHMsXG4gIGVsZW1lbnQ6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4sXG4gIGV2ZW50UHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lID0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50VmlzaWJsZSxcbikgPT4ge1xuICBjb25zdCBpc1Zpc2libGUgPSB1c2VJbnRlcnNlY3Rpb24oZWxlbWVudCwgJzBweCcpO1xuICBjb25zdCBoYXNUcmFja2VkRXZlbnQgPSB1c2VSZWYoZmFsc2UpO1xuICBjb25zdCB7IHRyYWNrRXZlbnQgfSA9IHVzZUFtcGxpdHVkZSgpO1xuXG4gIGNvbnN0IGNvbXBvbmVudFByb3BzID0gKCgpID0+IHtcbiAgICBpZiAoZXZlbnROYW1lID09PSBTcGlmZnlNZXRyaWNzRXZlbnROYW1lLkNoYXRDb21wb25lbnRWaXNpYmxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBjaGF0X2NvbXBvbmVudDogY29tcG9uZW50LFxuICAgICAgICAuLi5ldmVudFByb3BzLFxuICAgICAgfTtcbiAgICB9XG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5TZWFyY2hDb21wb25lbnRWaXNpYmxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzZWFyY2hfY29tcG9uZW50OiBjb21wb25lbnQsXG4gICAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgICB9O1xuICAgIH1cbiAgICAvLyBEZWZhdWx0IGNhc2UgZm9yIG90aGVyIGV2ZW50IHR5cGVzXG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbXBvbmVudCxcbiAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgfTtcbiAgfSkoKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc1Zpc2libGUgJiYgIWhhc1RyYWNrZWRFdmVudC5jdXJyZW50KSB7XG4gICAgICB0cmFja0V2ZW50KHtcbiAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICBldmVudFByb3BzOiBjb21wb25lbnRQcm9wcyxcbiAgICAgIH0pO1xuICAgICAgaGFzVHJhY2tlZEV2ZW50LmN1cnJlbnQgPSB0cnVlO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY29tcG9uZW50LCBldmVudFByb3BzLCBldmVudE5hbWUsIGNvbXBvbmVudFByb3BzLCB0cmFja0V2ZW50XSk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWFBLE1BQWEsaUNBQ1gsV0FDQSxTQUNBLFlBQ0EsWUFBb0MsdUJBQXVCLHlCQUN4RDtDQUNILE1BQU0sWUFBWSxnQkFBZ0IsU0FBUyxNQUFNO0NBQ2pELE1BQU0sa0JBQWtCLE9BQU8sTUFBTTtDQUNyQyxNQUFNLEVBQUUsZUFBZSxjQUFjO0NBRXJDLE1BQU0sd0JBQXdCO0FBQzVCLE1BQUksY0FBYyx1QkFBdUIscUJBQ3ZDLFFBQU87R0FDTCxnQkFBZ0I7R0FDaEIsR0FBRztHQUNKO0FBRUgsTUFBSSxjQUFjLHVCQUF1Qix1QkFDdkMsUUFBTztHQUNMLGtCQUFrQjtHQUNsQixHQUFHO0dBQ0o7QUFHSCxTQUFPO0dBQ0w7R0FDQSxHQUFHO0dBQ0o7S0FDQztBQUVKLGlCQUFnQjtBQUNkLE1BQUksYUFBYSxDQUFDLGdCQUFnQixTQUFTO0FBQ3pDLGNBQVc7SUFDVDtJQUNBLFlBQVk7SUFDYixDQUFDO0FBQ0YsbUJBQWdCLFVBQVU7O0lBRTNCO0VBQUM7RUFBVztFQUFXO0VBQVk7RUFBVztFQUFnQjtFQUFXLENBQUMifQ==
53
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhY2tDb21wb25lbnRWaXNpYmxlRXZlbnQtQ0tFTEZKaEkuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2hvb2tzL1RyYWNrQ29tcG9uZW50VmlzaWJsZUV2ZW50L3VzZVRyYWNrQ29tcG9uZW50VmlzaWJsZUV2ZW50LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlZk9iamVjdCwgdXNlRWZmZWN0LCB1c2VSZWYgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB1c2VJbnRlcnNlY3Rpb24gfSBmcm9tICdzcmMvaG9va3MvSW50ZXJzZWN0aW9uL3VzZUludGVyc2VjdGlvbic7XG5pbXBvcnQgeyB1c2VBbXBsaXR1ZGUgfSBmcm9tICdzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dC9hbXBsaXR1ZGVDb250ZXh0JztcbmltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUsIFNwaWZmeVdpZGdldHMgfSBmcm9tICdAZW52aXZlLWFpL3R5cGVzJztcblxuLyoqXG4gKiBUcmFja3MgYSBjb21wb25lbnQgYW5kIGxvZ3MgYW4gZXZlbnQgdG8gQW1wbGl0dWRlIHdoZW4gdGhlIGNvbXBvbmVudCBpcyB2aXNpYmxlLlxuICpcbiAqIEBwYXJhbSBjb21wb25lbnQgLSBUaGUgY29tcG9uZW50IHRvIHRyYWNrLlxuICogQHBhcmFtIGVsZW1lbnQgLSBUaGUgZWxlbWVudCB0byB0cmFjayB2aXNpYmlsaXR5IG9mLlxuICogQHBhcmFtIGV2ZW50UHJvcHMgLSBBZGRpdGlvbmFsIHByb3BlcnRpZXMgdG8gaW5jbHVkZSB3aXRoIHRoZSBldmVudC5cbiAqIEBwYXJhbSBldmVudE5hbWUgLSBUaGUgQW1wbGl0dWRlIGV2ZW50IG5hbWUgdG8gdHJhY2sgKGRlZmF1bHRzIHRvIENoYXRDb21wb25lbnRWaXNpYmxlKS5cbiAqL1xuZXhwb3J0IGNvbnN0IHVzZVRyYWNrQ29tcG9uZW50VmlzaWJsZUV2ZW50ID0gKFxuICBjb21wb25lbnQ6IFNwaWZmeVdpZGdldHMsXG4gIGVsZW1lbnQ6IFJlZk9iamVjdDxIVE1MRWxlbWVudD4sXG4gIGV2ZW50UHJvcHM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lID0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50VmlzaWJsZSxcbikgPT4ge1xuICBjb25zdCBpc1Zpc2libGUgPSB1c2VJbnRlcnNlY3Rpb24oZWxlbWVudCwgJzBweCcpO1xuICBjb25zdCBoYXNUcmFja2VkRXZlbnQgPSB1c2VSZWYoZmFsc2UpO1xuICBjb25zdCB7IHRyYWNrRXZlbnQgfSA9IHVzZUFtcGxpdHVkZSgpO1xuXG4gIGNvbnN0IGNvbXBvbmVudFByb3BzID0gKCgpID0+IHtcbiAgICBpZiAoZXZlbnROYW1lID09PSBTcGlmZnlNZXRyaWNzRXZlbnROYW1lLkNoYXRDb21wb25lbnRWaXNpYmxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBjaGF0X2NvbXBvbmVudDogY29tcG9uZW50LFxuICAgICAgICAuLi5ldmVudFByb3BzLFxuICAgICAgfTtcbiAgICB9XG4gICAgaWYgKGV2ZW50TmFtZSA9PT0gU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5TZWFyY2hDb21wb25lbnRWaXNpYmxlKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzZWFyY2hfY29tcG9uZW50OiBjb21wb25lbnQsXG4gICAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgICB9O1xuICAgIH1cbiAgICAvLyBEZWZhdWx0IGNhc2UgZm9yIG90aGVyIGV2ZW50IHR5cGVzXG4gICAgcmV0dXJuIHtcbiAgICAgIGNvbXBvbmVudCxcbiAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgfTtcbiAgfSkoKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc1Zpc2libGUgJiYgIWhhc1RyYWNrZWRFdmVudC5jdXJyZW50KSB7XG4gICAgICB0cmFja0V2ZW50KHtcbiAgICAgICAgZXZlbnROYW1lLFxuICAgICAgICBldmVudFByb3BzOiBjb21wb25lbnRQcm9wcyxcbiAgICAgIH0pO1xuICAgICAgaGFzVHJhY2tlZEV2ZW50LmN1cnJlbnQgPSB0cnVlO1xuICAgIH1cbiAgfSwgW2lzVmlzaWJsZSwgY29tcG9uZW50LCBldmVudFByb3BzLCBldmVudE5hbWUsIGNvbXBvbmVudFByb3BzLCB0cmFja0V2ZW50XSk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWFBLE1BQWEsaUNBQ1gsV0FDQSxTQUNBLFlBQ0EsWUFBb0MsdUJBQXVCLHlCQUN4RDtDQUNILE1BQU0sWUFBWSxnQkFBZ0IsU0FBUyxNQUFNO0NBQ2pELE1BQU0sa0JBQWtCLE9BQU8sTUFBTTtDQUNyQyxNQUFNLEVBQUUsZUFBZSxjQUFjO0NBRXJDLE1BQU0sd0JBQXdCO0FBQzVCLE1BQUksY0FBYyx1QkFBdUIscUJBQ3ZDLFFBQU87R0FDTCxnQkFBZ0I7R0FDaEIsR0FBRztHQUNKO0FBRUgsTUFBSSxjQUFjLHVCQUF1Qix1QkFDdkMsUUFBTztHQUNMLGtCQUFrQjtHQUNsQixHQUFHO0dBQ0o7QUFHSCxTQUFPO0dBQ0w7R0FDQSxHQUFHO0dBQ0o7S0FDQztBQUVKLGlCQUFnQjtBQUNkLE1BQUksYUFBYSxDQUFDLGdCQUFnQixTQUFTO0FBQ3pDLGNBQVc7SUFDVDtJQUNBLFlBQVk7SUFDYixDQUFDO0FBQ0YsbUJBQWdCLFVBQVU7O0lBRTNCO0VBQUM7RUFBVztFQUFXO0VBQVk7RUFBVztFQUFnQjtFQUFXLENBQUMifQ==
@@ -0,0 +1,227 @@
1
+ import { EventsDispatcher } from "./events-WOOrnUAx.js";
2
+ import { FeatureGates, LocalStorageKeys, OrgShortName, SpiffyEvent, SpiffyMetricsEventName } from "./dist-CtkINi1R.js";
3
+ import { logger_default } from "./logger-BMVdhQOV.js";
4
+ import { amplitudeApiKeyAtom, contextSourceAtom, dataResidencyAtom, envAtom, identifyingPrefixAtom } from "./enviveConfig-DyvNVrxm.js";
5
+ import { orgAnalyticsGoogleAnalyticsConfigAtom } from "./org-D_QTp1ex.js";
6
+ import { userIdAtom } from "./app-CrmrUsr6.js";
7
+ import { useLocalStorage } from "./localStorageContext-znToxGBM.js";
8
+ import { useEnviveConfig } from "./enviveConfigContext-D8ijWYZf.js";
9
+ import { useFeatureFlagService } from "./featureFlagServiceContext-GIO9xKV0.js";
10
+ import React, { createContext, useCallback, useContext, useEffect, useMemo } from "react";
11
+ import { useAtomValue } from "jotai";
12
+ import { jsx } from "react/jsx-runtime";
13
+ import { createInstance } from "@amplitude/analytics-browser";
14
+
15
+ //#region src/contexts/amplitudeContext/amplitudeContext.tsx
16
+ const AmplitudeContext = createContext(null);
17
+ const AmplitudeProvider = ({ children }) => {
18
+ const userId = useAtomValue(userIdAtom);
19
+ const amplitudeApiKey = useAtomValue(amplitudeApiKeyAtom);
20
+ const dataResidency = useAtomValue(dataResidencyAtom);
21
+ const orgGaConfig = useAtomValue(orgAnalyticsGoogleAnalyticsConfigAtom);
22
+ const env = useAtomValue(envAtom);
23
+ const contextSource = useAtomValue(contextSourceAtom);
24
+ useAtomValue(identifyingPrefixAtom);
25
+ const { getItem } = useLocalStorage();
26
+ const { publicKey, featureOverrides, variantUrlOverride, variantInfoOverride, show, orgShortName, featureGates } = useEnviveConfig();
27
+ const { featureFlagService } = useFeatureFlagService();
28
+ const [amplitudeClient, setAmplitudeClient] = React.useState(void 0);
29
+ const [supplementalDefaultProps, setSupplementalDefaultProps] = React.useState({});
30
+ const isReady = Boolean(userId && featureFlagService && amplitudeApiKey && userId);
31
+ const getDefaultTrackingProps = useCallback(() => {
32
+ const gatesProps = featureGates ? featureGates.reduce((acc, curr) => {
33
+ if (curr.name && curr.value != null) return {
34
+ ...acc,
35
+ [`feature_gate.${curr.name}`]: curr.value
36
+ };
37
+ return acc;
38
+ }, {}) : {};
39
+ const experimentProps = {};
40
+ return {
41
+ ...gatesProps,
42
+ ...experimentProps,
43
+ ...supplementalDefaultProps,
44
+ app_id: "commerce-chat-react-component",
45
+ chat_id: getItem(LocalStorageKeys.ChatId),
46
+ env: env || "unknown",
47
+ app_source: contextSource,
48
+ "org.short_name": orgShortName,
49
+ "user.id": userId,
50
+ "cdp.user_id": null,
51
+ "cdp.provider": null,
52
+ "event.source": "web-browser",
53
+ "event.type": "user-activity",
54
+ "event.id": null,
55
+ "event.channel": "web",
56
+ "event.timestamp": null
57
+ };
58
+ }, [
59
+ featureGates,
60
+ supplementalDefaultProps,
61
+ env,
62
+ contextSource,
63
+ orgShortName,
64
+ userId
65
+ ]);
66
+ const eventPropsToPrefixedEventProps = useCallback((eventName, eventProps) => {
67
+ const prefix = eventName.toLowerCase().replace(/\s+/g, "_");
68
+ return Object.entries(eventProps).reduce((acc, [key, value$1]) => {
69
+ acc[`${prefix}.${key}`] = value$1;
70
+ return acc;
71
+ }, {});
72
+ }, []);
73
+ const amplitudeSessionReplayInit = useCallback(() => {
74
+ const isEnabled = Boolean(orgShortName === OrgShortName.UniqueVintage && featureFlagService?.isClientSessionEnabled() && featureFlagService?.isFeatureGateEnabled(FeatureGates.IsNewFeatureEnabled));
75
+ const sampleRate = 1;
76
+ try {
77
+ logger_default.logDebug(`[spiffy-ai] amplitude session-replay initializing isEnabled=${isEnabled} sampleRate=${sampleRate}`);
78
+ if (!isEnabled) return isEnabled;
79
+ return isEnabled;
80
+ } catch (e) {
81
+ logger_default.logError("[spiffy-ai] Error initializing amplitude session-replay", e);
82
+ return false;
83
+ }
84
+ }, [orgShortName, featureFlagService]);
85
+ const eventTrackingEnrichment = useMemo(() => {
86
+ return {
87
+ name: "page-view-tracking-enrichment",
88
+ type: "enrichment",
89
+ setup: async () => void 0,
90
+ execute: async (event) => {
91
+ let enrichedEvent;
92
+ if (["[Amplitude] Page Viewed", `[Spiffy] ${SpiffyMetricsEventName.BundleLoaded}`].includes(event.event_type)) {
93
+ const globalProperties = {};
94
+ if (publicKey) globalProperties["globalProperties.publicKey"] = publicKey;
95
+ if (featureOverrides) Object.entries(featureOverrides).forEach(([key, value$1]) => {
96
+ globalProperties[`globalProperties.featureOverrides.${key}`] = String(value$1);
97
+ });
98
+ if (variantUrlOverride) globalProperties["globalProperties.variantUrlOverride"] = variantUrlOverride;
99
+ if (variantInfoOverride) globalProperties["globalProperties.variantInfoOverride"] = JSON.stringify(variantInfoOverride);
100
+ if (show != null) globalProperties["globalProperties.show"] = String(show);
101
+ const enabledFeatures = featureFlagService.getFeatureFlags();
102
+ const enabledFeaturesProperties = Object.entries(enabledFeatures).reduce((acc, [key, value$1]) => ({
103
+ ...acc,
104
+ [`enabledFeatures.${key}`]: `${value$1}`
105
+ }), {});
106
+ const timingProperties = { "timing.enriched_at_ms": window.performance?.now() };
107
+ enrichedEvent = {
108
+ ...event,
109
+ event_properties: {
110
+ ...event.event_properties,
111
+ ...getDefaultTrackingProps(),
112
+ ...globalProperties,
113
+ ...enabledFeaturesProperties,
114
+ ...timingProperties
115
+ }
116
+ };
117
+ } else enrichedEvent = event;
118
+ EventsDispatcher.dispatch(SpiffyEvent.AMPLITUDE_EVENT, enrichedEvent);
119
+ return enrichedEvent;
120
+ }
121
+ };
122
+ }, [
123
+ getDefaultTrackingProps,
124
+ featureFlagService,
125
+ publicKey,
126
+ featureOverrides,
127
+ variantUrlOverride,
128
+ variantInfoOverride,
129
+ show
130
+ ]);
131
+ useEffect(() => {
132
+ if (isReady && !amplitudeClient) {
133
+ const currentAmplitudeInstance = createInstance();
134
+ const isSessionsEnabled = amplitudeSessionReplayInit();
135
+ currentAmplitudeInstance.add(eventTrackingEnrichment);
136
+ currentAmplitudeInstance.init(amplitudeApiKey, userId, {
137
+ serverZone: dataResidency,
138
+ trackingOptions: { ipAddress: true },
139
+ autocapture: {
140
+ attribution: true,
141
+ pageViews: { trackHistoryChanges: "pathOnly" },
142
+ sessions: isSessionsEnabled,
143
+ formInteractions: false,
144
+ fileDownloads: false
145
+ }
146
+ });
147
+ setAmplitudeClient(currentAmplitudeInstance);
148
+ }
149
+ }, [
150
+ isReady,
151
+ amplitudeClient,
152
+ amplitudeApiKey,
153
+ userId,
154
+ dataResidency,
155
+ amplitudeSessionReplayInit,
156
+ eventTrackingEnrichment
157
+ ]);
158
+ const trackEvent = useCallback(async ({ eventName, eventProps, eventGroups, alsoSendToGoogleAnalytics = false }) => {
159
+ logger_default.logDebug("Submitting event", eventName);
160
+ try {
161
+ const decoratedEventName = `[Spiffy] ${eventName}`;
162
+ if (!amplitudeClient) {
163
+ logger_default.logWarn("amplitude client undefined", void 0, { event_name: decoratedEventName });
164
+ return;
165
+ }
166
+ const eventData = JSON.stringify({
167
+ eventName,
168
+ eventProps,
169
+ created_at: (/* @__PURE__ */ new Date()).toISOString()
170
+ });
171
+ const data = new TextEncoder().encode(eventData);
172
+ const hashBuffer = await crypto.subtle.digest("SHA-256", data);
173
+ const currentInsertId = Array.from(new Uint8Array(hashBuffer)).map((b) => b.toString(16).padStart(2, "0")).join("");
174
+ logger_default.logDebug(`amplitude tracking ${decoratedEventName}`, null, {
175
+ event_name: decoratedEventName,
176
+ props: eventProps
177
+ });
178
+ amplitudeClient.track(decoratedEventName, {
179
+ ...getDefaultTrackingProps(),
180
+ ...eventProps,
181
+ ...eventProps ? eventPropsToPrefixedEventProps(eventName, eventProps) : {}
182
+ }, {
183
+ ...eventGroups,
184
+ insert_id: currentInsertId
185
+ });
186
+ if (alsoSendToGoogleAnalytics && orgGaConfig) {
187
+ logger_default.logDebug("[spiffy-ai] GA tracking", decoratedEventName);
188
+ if (window.dataLayer) window.dataLayer.push({
189
+ event: decoratedEventName,
190
+ eventProps
191
+ });
192
+ }
193
+ } catch (err) {
194
+ logger_default.logError("[spiffy-ai] Error tracking event", err, {
195
+ eventName,
196
+ eventProps
197
+ });
198
+ }
199
+ }, [
200
+ amplitudeClient,
201
+ getDefaultTrackingProps,
202
+ eventPropsToPrefixedEventProps,
203
+ orgGaConfig
204
+ ]);
205
+ const value = useMemo(() => ({
206
+ trackEvent,
207
+ isReady,
208
+ setSupplementalDefaultProps: (props) => setSupplementalDefaultProps(props)
209
+ }), [
210
+ trackEvent,
211
+ isReady,
212
+ setSupplementalDefaultProps
213
+ ]);
214
+ return /* @__PURE__ */ jsx(AmplitudeContext.Provider, {
215
+ value,
216
+ children
217
+ });
218
+ };
219
+ const useAmplitude = () => {
220
+ const context = useContext(AmplitudeContext);
221
+ if (!context) throw new Error("useAmplitude must be used within AmplitudeProvider");
222
+ return context;
223
+ };
224
+
225
+ //#endregion
226
+ export { AmplitudeProvider, useAmplitude };
227
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1wbGl0dWRlQ29udGV4dC1CaDRTVlZzZS5qcyIsIm5hbWVzIjpbIkFtcGxpdHVkZVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfT4iLCJ2YWx1ZSIsImVucmljaGVkRXZlbnQ6IEV2ZW50IiwiZ2xvYmFsUHJvcGVydGllczogUmVjb3JkPHN0cmluZywgc3RyaW5nPiIsImN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZTogQnJvd3NlckNsaWVudCJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250ZXh0cy9hbXBsaXR1ZGVDb250ZXh0L2FtcGxpdHVkZUNvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBjcmVhdGVDb250ZXh0LFxuICB1c2VDb250ZXh0LFxuICB1c2VDYWxsYmFjayxcbiAgdXNlTWVtbyxcbiAgdXNlRWZmZWN0LFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IHVzZUF0b21WYWx1ZSB9IGZyb20gXCJqb3RhaVwiO1xuaW1wb3J0IHsgY3JlYXRlSW5zdGFuY2UgfSBmcm9tIFwiQGFtcGxpdHVkZS9hbmFseXRpY3MtYnJvd3NlclwiO1xuaW1wb3J0IHtcbiAgRmVhdHVyZUdhdGVzLFxuICBPcmdTaG9ydE5hbWUsXG4gIExvY2FsU3RvcmFnZUtleXMsXG4gIFNwaWZmeUV2ZW50LFxuICBBbXBsaXR1ZGVDb250ZXh0VHlwZSxcbiAgU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSxcbiAgVHJhY2tFdmVudFBhcmFtcyxcbn0gZnJvbSBcIkBlbnZpdmUtYWkvdHlwZXNcIjtcbmltcG9ydCB7XG4gIGFtcGxpdHVkZUFwaUtleUF0b20sXG4gIGNvbnRleHRTb3VyY2VBdG9tLFxuICBkYXRhUmVzaWRlbmN5QXRvbSxcbiAgaWRlbnRpZnlpbmdQcmVmaXhBdG9tLFxufSBmcm9tIFwic3JjL2F0b21zL2Vudml2ZS9lbnZpdmVDb25maWdcIjtcbmltcG9ydCB7IHVzZUxvY2FsU3RvcmFnZSB9IGZyb20gXCJzcmMvY29udGV4dHMvbG9jYWxTdG9yYWdlQ29udGV4dFwiO1xuaW1wb3J0IHsgb3JnQW5hbHl0aWNzR29vZ2xlQW5hbHl0aWNzQ29uZmlnQXRvbSB9IGZyb20gXCJzcmMvYXRvbXMvb3JnL29yZ0FuYWx5dGljc0NvbmZpZ1wiO1xuaW1wb3J0IHsgdXNlcklkQXRvbSB9IGZyb20gXCJzcmMvYXRvbXMvYXBwXCI7XG5pbXBvcnQgeyBlbnZBdG9tIH0gZnJvbSBcInNyYy9hdG9tcy9lbnZpdmUvZW52aXZlQ29uZmlnXCI7XG5pbXBvcnQgTG9nZ2VyIGZyb20gXCJzcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dnZXJcIjtcbmltcG9ydCB0eXBlIHtcbiAgQnJvd3NlckNsaWVudCxcbiAgRW5yaWNobWVudFBsdWdpbixcbiAgRXZlbnQsXG4gIFNlcnZlclpvbmVUeXBlLFxufSBmcm9tIFwiQGFtcGxpdHVkZS9hbmFseXRpY3MtdHlwZXNcIjtcbmltcG9ydCB7IHVzZUVudml2ZUNvbmZpZyB9IGZyb20gXCJzcmMvY29udGV4dHMvZW52aXZlQ29uZmlnQ29udGV4dC9lbnZpdmVDb25maWdDb250ZXh0XCI7XG5pbXBvcnQgeyB1c2VGZWF0dXJlRmxhZ1NlcnZpY2UgfSBmcm9tIFwic3JjL2NvbnRleHRzL2ZlYXR1cmVGbGFnU2VydmljZUNvbnRleHQvZmVhdHVyZUZsYWdTZXJ2aWNlQ29udGV4dFwiO1xuaW1wb3J0IHsgRXZlbnRzRGlzcGF0Y2hlciB9IGZyb20gXCJzcmMvZXZlbnRzXCI7XG5cbmNvbnN0IEFtcGxpdHVkZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0PEFtcGxpdHVkZUNvbnRleHRUeXBlIHwgbnVsbD4obnVsbCk7XG5cbmV4cG9ydCBjb25zdCBBbXBsaXR1ZGVQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0+ID0gKHtcbiAgY2hpbGRyZW4sXG59KSA9PiB7XG4gIGNvbnN0IHVzZXJJZCA9IHVzZUF0b21WYWx1ZSh1c2VySWRBdG9tKTtcbiAgY29uc3QgYW1wbGl0dWRlQXBpS2V5ID0gdXNlQXRvbVZhbHVlKGFtcGxpdHVkZUFwaUtleUF0b20pO1xuICBjb25zdCBkYXRhUmVzaWRlbmN5ID0gdXNlQXRvbVZhbHVlKGRhdGFSZXNpZGVuY3lBdG9tKTtcbiAgY29uc3Qgb3JnR2FDb25maWcgPSB1c2VBdG9tVmFsdWUob3JnQW5hbHl0aWNzR29vZ2xlQW5hbHl0aWNzQ29uZmlnQXRvbSk7XG4gIGNvbnN0IGVudiA9IHVzZUF0b21WYWx1ZShlbnZBdG9tKTtcbiAgY29uc3QgY29udGV4dFNvdXJjZSA9IHVzZUF0b21WYWx1ZShjb250ZXh0U291cmNlQXRvbSk7XG4gIGNvbnN0IGlkZW50aWZ5aW5nUHJlZml4ID0gdXNlQXRvbVZhbHVlKGlkZW50aWZ5aW5nUHJlZml4QXRvbSk7XG4gIGNvbnN0IHsgZ2V0SXRlbSB9ID0gdXNlTG9jYWxTdG9yYWdlKCk7XG4gIGNvbnN0IHtcbiAgICBwdWJsaWNLZXksXG4gICAgZmVhdHVyZU92ZXJyaWRlcyxcbiAgICB2YXJpYW50VXJsT3ZlcnJpZGUsXG4gICAgdmFyaWFudEluZm9PdmVycmlkZSxcbiAgICBzaG93LFxuICAgIG9yZ1Nob3J0TmFtZSxcbiAgICBmZWF0dXJlR2F0ZXMsXG4gIH0gPSB1c2VFbnZpdmVDb25maWcoKTtcblxuICBjb25zdCB7IGZlYXR1cmVGbGFnU2VydmljZSB9ID0gdXNlRmVhdHVyZUZsYWdTZXJ2aWNlKCk7XG5cbiAgY29uc3QgW2FtcGxpdHVkZUNsaWVudCwgc2V0QW1wbGl0dWRlQ2xpZW50XSA9IFJlYWN0LnVzZVN0YXRlPFxuICAgIEJyb3dzZXJDbGllbnQgfCB1bmRlZmluZWRcbiAgPih1bmRlZmluZWQpO1xuICBjb25zdCBbc3VwcGxlbWVudGFsRGVmYXVsdFByb3BzLCBzZXRTdXBwbGVtZW50YWxEZWZhdWx0UHJvcHNdID1cbiAgICBSZWFjdC51c2VTdGF0ZTxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPj4oe30pO1xuXG4gIGNvbnN0IGlzUmVhZHkgPSBCb29sZWFuKFxuICAgIHVzZXJJZCAmJiBmZWF0dXJlRmxhZ1NlcnZpY2UgJiYgYW1wbGl0dWRlQXBpS2V5ICYmIHVzZXJJZFxuICApO1xuXG4gIGNvbnN0IGdldERlZmF1bHRUcmFja2luZ1Byb3BzID0gdXNlQ2FsbGJhY2soKCk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0+IHtcbiAgICBjb25zdCBnYXRlc1Byb3BzID0gZmVhdHVyZUdhdGVzXG4gICAgICA/IGZlYXR1cmVHYXRlcy5yZWR1Y2U8UmVjb3JkPHN0cmluZywgYm9vbGVhbj4+KChhY2MsIGN1cnIpID0+IHtcbiAgICAgICAgICBpZiAoY3Vyci5uYW1lICYmIGN1cnIudmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIHsgLi4uYWNjLCBbYGZlYXR1cmVfZ2F0ZS4ke2N1cnIubmFtZX1gXTogY3Vyci52YWx1ZSB9O1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gYWNjO1xuICAgICAgICB9LCB7fSlcbiAgICAgIDoge307XG4gICAgY29uc3QgZXhwZXJpbWVudFByb3BzID0ge307IC8vIE5vIGRpcmVjdCBlcXVpdmFsZW50IGZvciBleHBlcmltZW50cyBpbiBFbnZpdmVDb25maWcgeWV0XG5cbiAgICBjb25zdCBvcmdMZXZlbEFtcGxpdHVkZVRyYWNraW5nUHJvcHMgPSB7XG4gICAgICAuLi5nYXRlc1Byb3BzLFxuICAgICAgLi4uZXhwZXJpbWVudFByb3BzLFxuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ub3JnTGV2ZWxBbXBsaXR1ZGVUcmFja2luZ1Byb3BzLFxuICAgICAgLi4uc3VwcGxlbWVudGFsRGVmYXVsdFByb3BzLFxuICAgICAgLy8gVE9ETzogb3JnX2lkIGlzIG5vdCBkaXJlY3RseSBhdmFpbGFibGUgaW4gRW52aXZlQ29uZmlnLiBOZWVkIHRvIGZpbmQgYSBuZXcgc291cmNlIG9yIGRlcml2ZSBpdC5cbiAgICAgIC8vIG9yZ19pZDogb3JnQ29uZmlnPy5vcmc/Lm9yZz8uaWQsXG4gICAgICBhcHBfaWQ6IFwiY29tbWVyY2UtY2hhdC1yZWFjdC1jb21wb25lbnRcIixcbiAgICAgIGNoYXRfaWQ6IGdldEl0ZW0oTG9jYWxTdG9yYWdlS2V5cy5DaGF0SWQpLFxuICAgICAgZW52OiBlbnYgfHwgXCJ1bmtub3duXCIsXG4gICAgICBhcHBfc291cmNlOiBjb250ZXh0U291cmNlLFxuICAgICAgXCJvcmcuc2hvcnRfbmFtZVwiOiBvcmdTaG9ydE5hbWUsXG4gICAgICBcInVzZXIuaWRcIjogdXNlcklkLFxuICAgICAgXCJjZHAudXNlcl9pZFwiOiBudWxsLFxuICAgICAgXCJjZHAucHJvdmlkZXJcIjogbnVsbCxcbiAgICAgIFwiZXZlbnQuc291cmNlXCI6IFwid2ViLWJyb3dzZXJcIixcbiAgICAgIFwiZXZlbnQudHlwZVwiOiBcInVzZXItYWN0aXZpdHlcIixcbiAgICAgIFwiZXZlbnQuaWRcIjogbnVsbCxcbiAgICAgIFwiZXZlbnQuY2hhbm5lbFwiOiBcIndlYlwiLFxuICAgICAgXCJldmVudC50aW1lc3RhbXBcIjogbnVsbCxcbiAgICB9O1xuICB9LCBbXG4gICAgZmVhdHVyZUdhdGVzLFxuICAgIHN1cHBsZW1lbnRhbERlZmF1bHRQcm9wcyxcbiAgICBlbnYsXG4gICAgY29udGV4dFNvdXJjZSxcbiAgICBvcmdTaG9ydE5hbWUsXG4gICAgdXNlcklkLFxuICBdKTtcblxuICBjb25zdCBldmVudFByb3BzVG9QcmVmaXhlZEV2ZW50UHJvcHMgPSB1c2VDYWxsYmFjayhcbiAgICAoXG4gICAgICBldmVudE5hbWU6IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUsXG4gICAgICBldmVudFByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICk6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0+IHtcbiAgICAgIGNvbnN0IHByZWZpeCA9IGV2ZW50TmFtZS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoL1xccysvZywgXCJfXCIpO1xuICAgICAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKGV2ZW50UHJvcHMpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgICAgYWNjW2Ake3ByZWZpeH0uJHtrZXl9YF0gPSB2YWx1ZTtcbiAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgIH0sIHt9IGFzIFJlY29yZDxzdHJpbmcsIHVua25vd24+KTtcbiAgICB9LFxuICAgIFtdXG4gICk7XG5cbiAgY29uc3QgYW1wbGl0dWRlU2Vzc2lvblJlcGxheUluaXQgPSB1c2VDYWxsYmFjaygoKTogYm9vbGVhbiA9PiB7XG4gICAgY29uc3QgaXNFbmFibGVkID0gQm9vbGVhbihcbiAgICAgIG9yZ1Nob3J0TmFtZSA9PT0gT3JnU2hvcnROYW1lLlVuaXF1ZVZpbnRhZ2UgJiZcbiAgICAgICAgZmVhdHVyZUZsYWdTZXJ2aWNlPy5pc0NsaWVudFNlc3Npb25FbmFibGVkKCkgJiZcbiAgICAgICAgZmVhdHVyZUZsYWdTZXJ2aWNlPy5pc0ZlYXR1cmVHYXRlRW5hYmxlZChcbiAgICAgICAgICBGZWF0dXJlR2F0ZXMuSXNOZXdGZWF0dXJlRW5hYmxlZFxuICAgICAgICApXG4gICAgKTtcbiAgICBjb25zdCBzYW1wbGVSYXRlID0gMTtcblxuICAgIHRyeSB7XG4gICAgICBMb2dnZXIubG9nRGVidWcoXG4gICAgICAgIGBbc3BpZmZ5LWFpXSBhbXBsaXR1ZGUgc2Vzc2lvbi1yZXBsYXkgaW5pdGlhbGl6aW5nIGlzRW5hYmxlZD0ke2lzRW5hYmxlZH0gc2FtcGxlUmF0ZT0ke3NhbXBsZVJhdGV9YFxuICAgICAgKTtcblxuICAgICAgaWYgKCFpc0VuYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuIGlzRW5hYmxlZDtcbiAgICAgIH1cblxuICAgICAgLy8gYW1wbGl0dWRlSW5zdGFuY2UuYWRkKHNlc3Npb25SZXBsYXlQbHVnaW4oeyBzYW1wbGVSYXRlIH0pKTtcblxuICAgICAgcmV0dXJuIGlzRW5hYmxlZDtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBMb2dnZXIubG9nRXJyb3IoXG4gICAgICAgIFwiW3NwaWZmeS1haV0gRXJyb3IgaW5pdGlhbGl6aW5nIGFtcGxpdHVkZSBzZXNzaW9uLXJlcGxheVwiLFxuICAgICAgICBlXG4gICAgICApO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSwgW29yZ1Nob3J0TmFtZSwgZmVhdHVyZUZsYWdTZXJ2aWNlXSk7XG5cbiAgY29uc3QgZXZlbnRUcmFja2luZ0VucmljaG1lbnQgPSB1c2VNZW1vKCgpOiBFbnJpY2htZW50UGx1Z2luID0+IHtcbiAgICBjb25zdCBlbnJpY2htZW50OiBFbnJpY2htZW50UGx1Z2luID0ge1xuICAgICAgbmFtZTogXCJwYWdlLXZpZXctdHJhY2tpbmctZW5yaWNobWVudFwiLFxuICAgICAgdHlwZTogXCJlbnJpY2htZW50XCIsXG4gICAgICBzZXR1cDogYXN5bmMgKCkgPT4gdW5kZWZpbmVkLFxuICAgICAgZXhlY3V0ZTogYXN5bmMgKGV2ZW50OiBFdmVudCk6IFByb21pc2U8RXZlbnQ+ID0+IHtcbiAgICAgICAgbGV0IGVucmljaGVkRXZlbnQ6IEV2ZW50O1xuXG4gICAgICAgIGNvbnN0IGV2ZW50c1RvRW5yaWNoID0gW1xuICAgICAgICAgIFwiW0FtcGxpdHVkZV0gUGFnZSBWaWV3ZWRcIixcbiAgICAgICAgICBgW1NwaWZmeV0gJHtTcGlmZnlNZXRyaWNzRXZlbnROYW1lLkJ1bmRsZUxvYWRlZH1gLFxuICAgICAgICBdO1xuXG4gICAgICAgIGlmIChldmVudHNUb0VucmljaC5pbmNsdWRlcyhldmVudC5ldmVudF90eXBlKSkge1xuICAgICAgICAgIGNvbnN0IGdsb2JhbFByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gPSB7fTtcblxuICAgICAgICAgIGlmIChwdWJsaWNLZXkpIHtcbiAgICAgICAgICAgIGdsb2JhbFByb3BlcnRpZXNbXCJnbG9iYWxQcm9wZXJ0aWVzLnB1YmxpY0tleVwiXSA9IHB1YmxpY0tleTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKGZlYXR1cmVPdmVycmlkZXMpIHtcbiAgICAgICAgICAgIE9iamVjdC5lbnRyaWVzKGZlYXR1cmVPdmVycmlkZXMpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xuICAgICAgICAgICAgICBnbG9iYWxQcm9wZXJ0aWVzW2BnbG9iYWxQcm9wZXJ0aWVzLmZlYXR1cmVPdmVycmlkZXMuJHtrZXl9YF0gPVxuICAgICAgICAgICAgICAgIFN0cmluZyh2YWx1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHZhcmlhbnRVcmxPdmVycmlkZSkge1xuICAgICAgICAgICAgZ2xvYmFsUHJvcGVydGllc1tcImdsb2JhbFByb3BlcnRpZXMudmFyaWFudFVybE92ZXJyaWRlXCJdID1cbiAgICAgICAgICAgICAgdmFyaWFudFVybE92ZXJyaWRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodmFyaWFudEluZm9PdmVycmlkZSkge1xuICAgICAgICAgICAgZ2xvYmFsUHJvcGVydGllc1tcImdsb2JhbFByb3BlcnRpZXMudmFyaWFudEluZm9PdmVycmlkZVwiXSA9XG4gICAgICAgICAgICAgIEpTT04uc3RyaW5naWZ5KHZhcmlhbnRJbmZvT3ZlcnJpZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAoc2hvdyAhPSBudWxsKSB7XG4gICAgICAgICAgICBnbG9iYWxQcm9wZXJ0aWVzW1wiZ2xvYmFsUHJvcGVydGllcy5zaG93XCJdID0gU3RyaW5nKHNob3cpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGVuYWJsZWRGZWF0dXJlcyA9IGZlYXR1cmVGbGFnU2VydmljZSEuZ2V0RmVhdHVyZUZsYWdzKCk7XG4gICAgICAgICAgY29uc3QgZW5hYmxlZEZlYXR1cmVzUHJvcGVydGllcyA9IE9iamVjdC5lbnRyaWVzKFxuICAgICAgICAgICAgZW5hYmxlZEZlYXR1cmVzXG4gICAgICAgICAgKS5yZWR1Y2U8UmVjb3JkPHN0cmluZywgc3RyaW5nPj4oXG4gICAgICAgICAgICAoYWNjLCBba2V5LCB2YWx1ZV0pID0+ICh7XG4gICAgICAgICAgICAgIC4uLmFjYyxcbiAgICAgICAgICAgICAgW2BlbmFibGVkRmVhdHVyZXMuJHtrZXl9YF06IGAke3ZhbHVlfWAsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHt9XG4gICAgICAgICAgKTtcblxuICAgICAgICAgIGNvbnN0IHRpbWluZ1Byb3BlcnRpZXMgPSB7XG4gICAgICAgICAgICBcInRpbWluZy5lbnJpY2hlZF9hdF9tc1wiOiB3aW5kb3cucGVyZm9ybWFuY2U/Lm5vdygpLFxuICAgICAgICAgIH07XG5cbiAgICAgICAgICBlbnJpY2hlZEV2ZW50ID0ge1xuICAgICAgICAgICAgLi4uZXZlbnQsXG4gICAgICAgICAgICBldmVudF9wcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgIC4uLmV2ZW50LmV2ZW50X3Byb3BlcnRpZXMsXG4gICAgICAgICAgICAgIC4uLmdldERlZmF1bHRUcmFja2luZ1Byb3BzKCksXG4gICAgICAgICAgICAgIC4uLmdsb2JhbFByb3BlcnRpZXMsXG4gICAgICAgICAgICAgIC4uLmVuYWJsZWRGZWF0dXJlc1Byb3BlcnRpZXMsXG4gICAgICAgICAgICAgIC4uLnRpbWluZ1Byb3BlcnRpZXMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZW5yaWNoZWRFdmVudCA9IGV2ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgRXZlbnRzRGlzcGF0Y2hlci5kaXNwYXRjaChTcGlmZnlFdmVudC5BTVBMSVRVREVfRVZFTlQsIGVucmljaGVkRXZlbnQpO1xuXG4gICAgICAgIHJldHVybiBlbnJpY2hlZEV2ZW50O1xuICAgICAgfSxcbiAgICB9O1xuICAgIHJldHVybiBlbnJpY2htZW50O1xuICB9LCBbXG4gICAgZ2V0RGVmYXVsdFRyYWNraW5nUHJvcHMsXG4gICAgZmVhdHVyZUZsYWdTZXJ2aWNlLFxuICAgIHB1YmxpY0tleSxcbiAgICBmZWF0dXJlT3ZlcnJpZGVzLFxuICAgIHZhcmlhbnRVcmxPdmVycmlkZSxcbiAgICB2YXJpYW50SW5mb092ZXJyaWRlLFxuICAgIHNob3csXG4gIF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGlzUmVhZHkgJiYgIWFtcGxpdHVkZUNsaWVudCkge1xuICAgICAgY29uc3QgY3VycmVudEFtcGxpdHVkZUluc3RhbmNlOiBCcm93c2VyQ2xpZW50ID0gY3JlYXRlSW5zdGFuY2UoKTtcbiAgICAgIGNvbnN0IGlzU2Vzc2lvbnNFbmFibGVkID0gYW1wbGl0dWRlU2Vzc2lvblJlcGxheUluaXQoKTtcbiAgICAgIGN1cnJlbnRBbXBsaXR1ZGVJbnN0YW5jZS5hZGQoZXZlbnRUcmFja2luZ0VucmljaG1lbnQpO1xuICAgICAgY3VycmVudEFtcGxpdHVkZUluc3RhbmNlLmluaXQoYW1wbGl0dWRlQXBpS2V5ISwgdXNlcklkISwge1xuICAgICAgICBzZXJ2ZXJab25lOiBkYXRhUmVzaWRlbmN5IGFzIFNlcnZlclpvbmVUeXBlLFxuICAgICAgICB0cmFja2luZ09wdGlvbnM6IHtcbiAgICAgICAgICBpcEFkZHJlc3M6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGF1dG9jYXB0dXJlOiB7XG4gICAgICAgICAgYXR0cmlidXRpb246IHRydWUsXG4gICAgICAgICAgcGFnZVZpZXdzOiB7XG4gICAgICAgICAgICB0cmFja0hpc3RvcnlDaGFuZ2VzOiBcInBhdGhPbmx5XCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgICBzZXNzaW9uczogaXNTZXNzaW9uc0VuYWJsZWQsXG4gICAgICAgICAgZm9ybUludGVyYWN0aW9uczogZmFsc2UsXG4gICAgICAgICAgZmlsZURvd25sb2FkczogZmFsc2UsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHNldEFtcGxpdHVkZUNsaWVudChjdXJyZW50QW1wbGl0dWRlSW5zdGFuY2UpO1xuICAgIH1cbiAgfSwgW1xuICAgIGlzUmVhZHksXG4gICAgYW1wbGl0dWRlQ2xpZW50LFxuICAgIGFtcGxpdHVkZUFwaUtleSxcbiAgICB1c2VySWQsXG4gICAgZGF0YVJlc2lkZW5jeSxcbiAgICBhbXBsaXR1ZGVTZXNzaW9uUmVwbGF5SW5pdCxcbiAgICBldmVudFRyYWNraW5nRW5yaWNobWVudCxcbiAgXSk7XG5cbiAgY29uc3QgdHJhY2tFdmVudCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jICh7XG4gICAgICBldmVudE5hbWUsXG4gICAgICBldmVudFByb3BzLFxuICAgICAgZXZlbnRHcm91cHMsXG4gICAgICBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzID0gZmFsc2UsXG4gICAgfTogVHJhY2tFdmVudFBhcmFtcyk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgICAgTG9nZ2VyLmxvZ0RlYnVnKFwiU3VibWl0dGluZyBldmVudFwiLCBldmVudE5hbWUpO1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgZGVjb3JhdGVkRXZlbnROYW1lID0gYFtTcGlmZnldICR7ZXZlbnROYW1lfWA7XG5cbiAgICAgICAgaWYgKCFhbXBsaXR1ZGVDbGllbnQpIHtcbiAgICAgICAgICBMb2dnZXIubG9nV2FybihcImFtcGxpdHVkZSBjbGllbnQgdW5kZWZpbmVkXCIsIHVuZGVmaW5lZCwge1xuICAgICAgICAgICAgZXZlbnRfbmFtZTogZGVjb3JhdGVkRXZlbnROYW1lLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGV2ZW50RGF0YSA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgICBldmVudE5hbWUsXG4gICAgICAgICAgZXZlbnRQcm9wcyxcbiAgICAgICAgICBjcmVhdGVkX2F0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgIH0pO1xuICAgICAgICBjb25zdCBlbmNvZGVyID0gbmV3IFRleHRFbmNvZGVyKCk7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBlbmNvZGVyLmVuY29kZShldmVudERhdGEpO1xuICAgICAgICAvLyBjYWxjdWxhdGUgYSBoYXNoIG9mIHRoZSBldmVudCBwcm9wZXJ0aWVzIHRvIHVzZSBhcyB0aGUgaW5zZXJ0X2lkIHNvIHRoYXQgZHVwbGljYXRlIGV2ZW50c1xuICAgICAgICAvLyBhcmUgYXV0b21hdGljYWxseSBkcm9wcGVkIGJ5IEFtcGxpdHVkZVxuICAgICAgICBjb25zdCBoYXNoQnVmZmVyID0gYXdhaXQgY3J5cHRvLnN1YnRsZS5kaWdlc3QoXCJTSEEtMjU2XCIsIGRhdGEpO1xuICAgICAgICBjb25zdCBoYXNoQXJyYXkgPSBBcnJheS5mcm9tKG5ldyBVaW50OEFycmF5KGhhc2hCdWZmZXIpKTtcbiAgICAgICAgY29uc3QgY3VycmVudEluc2VydElkID0gaGFzaEFycmF5XG4gICAgICAgICAgLm1hcCgoYikgPT4gYi50b1N0cmluZygxNikucGFkU3RhcnQoMiwgXCIwXCIpKVxuICAgICAgICAgIC5qb2luKFwiXCIpO1xuXG4gICAgICAgIExvZ2dlci5sb2dEZWJ1ZyhgYW1wbGl0dWRlIHRyYWNraW5nICR7ZGVjb3JhdGVkRXZlbnROYW1lfWAsIG51bGwsIHtcbiAgICAgICAgICBldmVudF9uYW1lOiBkZWNvcmF0ZWRFdmVudE5hbWUsXG4gICAgICAgICAgcHJvcHM6IGV2ZW50UHJvcHMsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGFtcGxpdHVkZUNsaWVudC50cmFjayhcbiAgICAgICAgICBkZWNvcmF0ZWRFdmVudE5hbWUsXG4gICAgICAgICAge1xuICAgICAgICAgICAgLi4uZ2V0RGVmYXVsdFRyYWNraW5nUHJvcHMoKSxcbiAgICAgICAgICAgIC4uLmV2ZW50UHJvcHMsXG4gICAgICAgICAgICAuLi4oZXZlbnRQcm9wc1xuICAgICAgICAgICAgICA/IGV2ZW50UHJvcHNUb1ByZWZpeGVkRXZlbnRQcm9wcyhldmVudE5hbWUsIGV2ZW50UHJvcHMpXG4gICAgICAgICAgICAgIDoge30pLFxuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgLi4uZXZlbnRHcm91cHMsXG4gICAgICAgICAgICBpbnNlcnRfaWQ6IGN1cnJlbnRJbnNlcnRJZCxcbiAgICAgICAgICB9XG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGFsc29TZW5kVG9Hb29nbGVBbmFseXRpY3MgJiYgb3JnR2FDb25maWcpIHtcbiAgICAgICAgICAvLyBUT0RPOiBBZGQgaW4gd2luZG93RGF0YUxheWVyU2VydmljZSBvciBjb250ZXh0IGFsdGVybmF0aXZlIGFuZCBob29rIGl0IHVwIGhlcmVcbiAgICAgICAgICBMb2dnZXIubG9nRGVidWcoXCJbc3BpZmZ5LWFpXSBHQSB0cmFja2luZ1wiLCBkZWNvcmF0ZWRFdmVudE5hbWUpO1xuICAgICAgICAgIGlmICh3aW5kb3cuZGF0YUxheWVyKSB7XG4gICAgICAgICAgICAod2luZG93LmRhdGFMYXllciBhcyBhbnlbXSkucHVzaCh7XG4gICAgICAgICAgICAgIGV2ZW50OiBkZWNvcmF0ZWRFdmVudE5hbWUsXG4gICAgICAgICAgICAgIGV2ZW50UHJvcHM6IGV2ZW50UHJvcHMsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBMb2dnZXIubG9nRXJyb3IoXCJbc3BpZmZ5LWFpXSBFcnJvciB0cmFja2luZyBldmVudFwiLCBlcnIsIHtcbiAgICAgICAgICBldmVudE5hbWUsXG4gICAgICAgICAgZXZlbnRQcm9wcyxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBbXG4gICAgICBhbXBsaXR1ZGVDbGllbnQsXG4gICAgICBnZXREZWZhdWx0VHJhY2tpbmdQcm9wcyxcbiAgICAgIGV2ZW50UHJvcHNUb1ByZWZpeGVkRXZlbnRQcm9wcyxcbiAgICAgIG9yZ0dhQ29uZmlnLFxuICAgIF1cbiAgKTtcblxuICBjb25zdCB2YWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHtcbiAgICAgIHRyYWNrRXZlbnQsXG4gICAgICBpc1JlYWR5LFxuICAgICAgc2V0U3VwcGxlbWVudGFsRGVmYXVsdFByb3BzOiAocHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+KSA9PlxuICAgICAgICBzZXRTdXBwbGVtZW50YWxEZWZhdWx0UHJvcHMocHJvcHMpLFxuICAgIH0pLFxuICAgIFt0cmFja0V2ZW50LCBpc1JlYWR5LCBzZXRTdXBwbGVtZW50YWxEZWZhdWx0UHJvcHNdXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8QW1wbGl0dWRlQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17dmFsdWV9PlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvQW1wbGl0dWRlQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VBbXBsaXR1ZGUgPSAoKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KEFtcGxpdHVkZUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJ1c2VBbXBsaXR1ZGUgbXVzdCBiZSB1c2VkIHdpdGhpbiBBbXBsaXR1ZGVQcm92aWRlclwiKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7OztBQXVDQSxNQUFNLG1CQUFtQixjQUEyQyxLQUFLO0FBRXpFLE1BQWFBLHFCQUE4RCxFQUN6RSxlQUNJO0NBQ0osTUFBTSxTQUFTLGFBQWEsV0FBVztDQUN2QyxNQUFNLGtCQUFrQixhQUFhLG9CQUFvQjtDQUN6RCxNQUFNLGdCQUFnQixhQUFhLGtCQUFrQjtDQUNyRCxNQUFNLGNBQWMsYUFBYSxzQ0FBc0M7Q0FDdkUsTUFBTSxNQUFNLGFBQWEsUUFBUTtDQUNqQyxNQUFNLGdCQUFnQixhQUFhLGtCQUFrQjtBQUMzQixjQUFhLHNCQUFzQjtDQUM3RCxNQUFNLEVBQUUsWUFBWSxpQkFBaUI7Q0FDckMsTUFBTSxFQUNKLFdBQ0Esa0JBQ0Esb0JBQ0EscUJBQ0EsTUFDQSxjQUNBLGlCQUNFLGlCQUFpQjtDQUVyQixNQUFNLEVBQUUsdUJBQXVCLHVCQUF1QjtDQUV0RCxNQUFNLENBQUMs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