@envive-ai/react-hooks 0.1.5 → 0.1.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 (491) hide show
  1. package/dist/amplitudeContext-CHzas7Cf.d.cts +52 -0
  2. package/dist/amplitudeContext-D-7fmVh1.cjs +356 -0
  3. package/dist/amplitudeContext-hY3caPC6.js +322 -0
  4. package/dist/amplitudeContext-tJ4y-SzX.d.ts +52 -0
  5. package/dist/api-DjeZXxl_.js +207 -0
  6. package/dist/api-_JaUnIUj.cjs +292 -0
  7. package/dist/app-CjsQ2_n-.js +132 -0
  8. package/dist/app-CnKRZ9RW.cjs +178 -0
  9. package/dist/application/models/graphql/index.cjs +3 -12
  10. package/dist/application/models/graphql/index.d.cts +1 -1
  11. package/dist/application/models/graphql/index.d.ts +1 -1
  12. package/dist/application/models/graphql/index.js +1 -10
  13. package/dist/application/models/guards/api/index.cjs +1 -2
  14. package/dist/application/models/guards/api/index.d.cts +2 -2
  15. package/dist/application/models/guards/api/index.d.ts +2 -2
  16. package/dist/application/models/guards/api/index.js +1 -2
  17. package/dist/application/models/index.cjs +48 -54
  18. package/dist/application/models/index.d.cts +7 -9
  19. package/dist/application/models/index.d.ts +7 -9
  20. package/dist/application/models/index.js +7 -11
  21. package/dist/application/models/utilityTypes/index.cjs +1 -1
  22. package/dist/application/models/utilityTypes/index.d.cts +1 -1
  23. package/dist/application/models/utilityTypes/index.d.ts +1 -1
  24. package/dist/application/models/utilityTypes/index.js +1 -1
  25. package/dist/application/models/variantInfo/index.cjs +1 -1
  26. package/dist/application/models/variantInfo/index.d.cts +1 -1
  27. package/dist/application/models/variantInfo/index.d.ts +1 -1
  28. package/dist/application/models/variantInfo/index.js +1 -1
  29. package/dist/application/utils/index.cjs +40 -37
  30. package/dist/application/utils/index.d.cts +18 -14
  31. package/dist/application/utils/index.d.ts +19 -15
  32. package/dist/application/utils/index.js +13 -10
  33. package/dist/{atomStore-JwGb7pcy.cjs → atomStore-B4jIaDPd.cjs} +1 -1
  34. package/dist/{atomStore-B1cgmbP0.js → atomStore-D8pjE1vL.js} +1 -1
  35. package/dist/atoms/app/index.cjs +14 -16
  36. package/dist/atoms/app/index.d.cts +20 -19
  37. package/dist/atoms/app/index.d.ts +20 -19
  38. package/dist/atoms/app/index.js +10 -11
  39. package/dist/atoms/atomStore/index.cjs +2 -1
  40. package/dist/atoms/atomStore/index.d.cts +24 -2
  41. package/dist/atoms/atomStore/index.d.ts +24 -2
  42. package/dist/atoms/atomStore/index.js +2 -1
  43. package/dist/atoms/chat/index.cjs +44 -40
  44. package/dist/atoms/chat/index.d.cts +35 -36
  45. package/dist/atoms/chat/index.d.ts +35 -36
  46. package/dist/atoms/chat/index.js +14 -10
  47. package/dist/atoms/globalSearch/index.cjs +1 -1
  48. package/dist/atoms/globalSearch/index.d.cts +5 -5
  49. package/dist/atoms/globalSearch/index.d.ts +6 -6
  50. package/dist/atoms/globalSearch/index.js +1 -1
  51. package/dist/atoms/org/index.cjs +26 -38
  52. package/dist/atoms/org/index.d.cts +35 -48
  53. package/dist/atoms/org/index.d.ts +35 -48
  54. package/dist/atoms/org/index.js +11 -11
  55. package/dist/atoms/search/index.cjs +47 -41
  56. package/dist/atoms/search/index.d.cts +7 -9
  57. package/dist/atoms/search/index.d.ts +7 -9
  58. package/dist/atoms/search/index.js +16 -10
  59. package/dist/bandolier-DYEz4-8C.js +1229 -0
  60. package/dist/bandolier-o_-xrbOV.cjs +1229 -0
  61. package/dist/carpe-CsG5jCcl.cjs +607 -0
  62. package/dist/carpe-DONk00bZ.js +605 -0
  63. package/dist/cdnUtils-32v8bDX9.cjs +16 -0
  64. package/dist/cdnUtils-E4tLBt2g.js +11 -0
  65. package/dist/{chat-_NzpO_Hn.cjs → chat-BubCW1as.cjs} +1 -1
  66. package/dist/chat-CO7cRkaq.cjs +506 -0
  67. package/dist/{chat-CHmD79E1.js → chat-CV6MXeID.js} +1 -1
  68. package/dist/chat-hcRc4RRd.js +285 -0
  69. package/dist/{components-Dl-TMD9k.js → components-B4T3Uzth.js} +1 -1
  70. package/dist/{components-D0XDRcaN.cjs → components-Cw9WjA6g.cjs} +1 -1
  71. package/dist/config/locators/components/chat/index.cjs +1 -1
  72. package/dist/config/locators/components/chat/index.d.cts +1 -1
  73. package/dist/config/locators/components/chat/index.d.ts +1 -1
  74. package/dist/config/locators/components/chat/index.js +1 -1
  75. package/dist/config/locators/components/chat/variants/index.d.cts +1 -1
  76. package/dist/config/locators/components/chat/variants/index.d.ts +1 -1
  77. package/dist/config/locators/components/index.cjs +1 -1
  78. package/dist/config/locators/components/index.d.cts +1 -1
  79. package/dist/config/locators/components/index.d.ts +1 -1
  80. package/dist/config/locators/components/index.js +1 -1
  81. package/dist/config/locators/components/search/index.d.ts +1 -1
  82. package/dist/config/locators/index.cjs +4 -4
  83. package/dist/config/locators/index.d.cts +2 -2
  84. package/dist/config/locators/index.d.ts +2 -2
  85. package/dist/config/locators/index.js +4 -4
  86. package/dist/contexts/index.cjs +45 -14
  87. package/dist/contexts/index.d.cts +10 -10
  88. package/dist/contexts/index.d.ts +10 -10
  89. package/dist/contexts/index.js +22 -11
  90. package/dist/contexts-B4ihTBsV.cjs +2980 -0
  91. package/dist/contexts-DGlr7M1o.js +2596 -0
  92. package/dist/coterie-CKB93qfz.cjs +239 -0
  93. package/dist/{coterie--MGvWeVh.cjs → coterie-DHcj2fRE.js} +64 -65
  94. package/dist/{custservice-types-C8-9vKWb.cjs → custservice-types-Dy0kc9TW.cjs} +1 -1
  95. package/dist/{custservice-types-CamCiXjq.js → custservice-types-mnIunabv.js} +1 -1
  96. package/dist/default-BnB4p0Se.cjs +234 -0
  97. package/dist/default-D6f5Dyt7.js +199 -0
  98. package/dist/default-ZKkE5zT4.cjs +4 -0
  99. package/dist/default-legGZJwI.js +4 -0
  100. package/dist/{divIds-CjceLRD9.cjs → divIds-2dJlU3z8.cjs} +1 -15
  101. package/dist/{divIds-0Vj9g-fM.js → divIds-BUrN2vY-.js} +2 -4
  102. package/dist/dreamlandBaby-BiRYYFav.js +346 -0
  103. package/dist/dreamlandBaby-zuvmfzfD.cjs +346 -0
  104. package/dist/{embedded-_cLpd6FK.js → embedded-BJLWIriJ.js} +1 -1
  105. package/dist/{embedded-B5Wi9g0T.cjs → embedded-Dl79TJLC.cjs} +1 -1
  106. package/dist/{entrypoints-CNUvSgnk.js → entrypoints-Bs3pn6EV.js} +1 -1
  107. package/dist/{entrypoints-DM9Sm18O.cjs → entrypoints-Dqi5pzWH.cjs} +1 -1
  108. package/dist/enviveConfig-BccuzS2a.cjs +240 -0
  109. package/dist/enviveConfig-CzhTz8Aa.js +152 -0
  110. package/dist/events/index.cjs +1 -1
  111. package/dist/events/index.js +1 -1
  112. package/dist/{events-ClCDFK7t.js → events-BrLpaNxh.js} +1 -1
  113. package/dist/{events-Da7gpmGv.cjs → events-DwT6cEwI.cjs} +1 -1
  114. package/dist/fiveCbd-DwTTwC2j.cjs +613 -0
  115. package/dist/fiveCbd-Dz2NouOF.js +613 -0
  116. package/dist/forLoveAndLemons-DqSdyD6S.js +665 -0
  117. package/dist/forLoveAndLemons-Ud6mPrV3.cjs +667 -0
  118. package/dist/{globalSearch-b0wC7ZEO.js → globalSearch-B6THR7Jx.js} +1 -1
  119. package/dist/{globalSearch-BTeZxvk1.cjs → globalSearch-BFvEg53C.cjs} +1 -1
  120. package/dist/graphql-BNW60InJ.cjs +128 -0
  121. package/dist/graphql-CjB8wHzm.js +74 -0
  122. package/dist/graphqlConfig-CYt6tWII.js +30 -0
  123. package/dist/graphqlConfig-DicykC-o.cjs +61 -0
  124. package/dist/greenpan-B_EbPkSP.js +397 -0
  125. package/dist/greenpan-kPE4fJgd.cjs +397 -0
  126. package/dist/grooveLife-Ckuir319.js +342 -0
  127. package/dist/grooveLife-DKSEQp1F.cjs +342 -0
  128. package/dist/homegrownCannabis-BVPa2pqe.js +410 -0
  129. package/dist/homegrownCannabis-BwIAkxuA.cjs +410 -0
  130. package/dist/hooks/index.cjs +39 -13
  131. package/dist/hooks/index.d.cts +127 -45
  132. package/dist/hooks/index.d.ts +124 -42
  133. package/dist/hooks/index.js +22 -11
  134. package/dist/{index-D46Rd0io.d.cts → index-B0NW9KTj.d.cts} +1 -1
  135. package/dist/{index-BdNKc2ix.d.cts → index-BDPWBU3h.d.cts} +1 -1
  136. package/dist/index-BMPtlgac.d.ts +191 -0
  137. package/dist/{index-BTK5uzs6.d.cts → index-Bmub8e38.d.cts} +1 -1
  138. package/dist/{index-BrXuc_Ck.d.cts → index-Byb45OPg.d.cts} +1 -1
  139. package/dist/{index-CSIOQD-A.d.ts → index-C6KdON7d.d.ts} +1 -1
  140. package/dist/index-C7pGDl1A.d.ts +1609 -0
  141. package/dist/{index-K2kNsOTw.d.cts → index-C9lgsCWp.d.cts} +32 -32
  142. package/dist/{index-BzgkfbNO.d.cts → index-CESxqFso.d.cts} +1 -1
  143. package/dist/{index-CbJZOEU4.d.ts → index-Cc-wBCn6.d.ts} +32 -32
  144. package/dist/{index-Cx9e-fRi.d.ts → index-CcIG01PJ.d.ts} +2 -2
  145. package/dist/{index-ClJ0nMsR.d.cts → index-CiWEYzXl.d.cts} +2 -2
  146. package/dist/{index-CKKkTsms.d.ts → index-Cqg6ltII.d.ts} +1 -1
  147. package/dist/{index-Cr2y08f1.d.ts → index-DOii3C6b.d.ts} +1 -1
  148. package/dist/index-DTu2X-YS.d.cts +1609 -0
  149. package/dist/index-OEifcBsm.d.cts +191 -0
  150. package/dist/{index-Dxpscrvz.d.ts → index-PGF8BvxQ.d.ts} +1 -1
  151. package/dist/{index-D2VaMPA3.d.ts → index-ylUiJvnr.d.ts} +1 -1
  152. package/dist/interceptors/index.cjs +2 -12
  153. package/dist/interceptors/index.d.cts +8 -13
  154. package/dist/interceptors/index.d.ts +8 -13
  155. package/dist/interceptors/index.js +2 -11
  156. package/dist/jackArcher-B39OEIj6.cjs +727 -0
  157. package/dist/{jackArcher-sO9EbgrZ.js → jackArcher-BwkWGybC.js} +24 -25
  158. package/dist/jordanCraig-CxRH_jLi.js +1786 -0
  159. package/dist/jordanCraig-RwmWw-jM.cjs +1786 -0
  160. package/dist/kindredBravely-D78VwL20.cjs +490 -0
  161. package/dist/kindredBravely-DQDpAzdl.js +490 -0
  162. package/dist/kutFromTheKloth-TcXQkIti.js +369 -0
  163. package/dist/kutFromTheKloth-dXRrNti0.cjs +369 -0
  164. package/dist/larryAndSerges-Bh5XEXsZ.js +262 -0
  165. package/dist/larryAndSerges-COdBzOzu.cjs +262 -0
  166. package/dist/leapsAndRebounds-BbXnqkl5.cjs +360 -0
  167. package/dist/leapsAndRebounds-mjCaH1k-.js +360 -0
  168. package/dist/longevityrx-DdV3v26F.cjs +320 -0
  169. package/dist/longevityrx-DfPDfvAt.js +320 -0
  170. package/dist/lookOptic-DgXFGBPP.cjs +282 -0
  171. package/dist/{lookOptic-Jwf7EAU8.js → lookOptic-FgVW1afF.js} +19 -20
  172. package/dist/mantraBrand-C5gVm3rk.cjs +750 -0
  173. package/dist/{mantraBrand-DoaVj837.js → mantraBrand-uV8HCDR8.js} +22 -23
  174. package/dist/medterra-BtDpr1Hw.cjs +583 -0
  175. package/dist/medterra-DgzE7-mj.js +583 -0
  176. package/dist/modells-CJjsxOIR.js +484 -0
  177. package/dist/modells-Ck5KbRFj.cjs +484 -0
  178. package/dist/models-BkXg5eIP.cjs +1534 -0
  179. package/dist/models-UZ6HszfZ.js +1281 -0
  180. package/dist/{nodeSelector-DybpVr-i.d.ts → nodeSelector-BxrS2S_k.d.ts} +1 -1
  181. package/dist/{nodeSelector-vKB44CDB.d.cts → nodeSelector-Dm4S-10n.d.cts} +1 -1
  182. package/dist/org-C2RrBVQR.cjs +81 -0
  183. package/dist/org-xMytX--e.js +38 -0
  184. package/dist/orgAnalyticsConfig-BJ2A1RZ-.cjs +39 -0
  185. package/dist/orgAnalyticsConfig-ClrFy2qH.js +14 -0
  186. package/dist/pressedFloral-Bteoboms.js +661 -0
  187. package/dist/pressedFloral-CexgV-xy.cjs +661 -0
  188. package/dist/search-BMOAmrmY.js +459 -0
  189. package/dist/search-Df0Ifneg.cjs +672 -0
  190. package/dist/{search-filter-types-9rTb3jMj.d.cts → search-filter-types-DosbseF3.d.cts} +1 -1
  191. package/dist/{search-filter-types-C-zZSpGo.d.ts → search-filter-types-fZf91Pdw.d.ts} +1 -1
  192. package/dist/skinPerfection-BGzq9lq-.cjs +334 -0
  193. package/dist/skinPerfection-BlvcEcUE.js +334 -0
  194. package/dist/snapSupplements-CbbGzAgO.cjs +285 -0
  195. package/dist/snapSupplements-kcsPAOm9.js +285 -0
  196. package/dist/{socialProofClasses-ky69yppk.cjs → socialProofClasses-Db8gzsfi.cjs} +1 -1
  197. package/dist/{socialProofClasses-DdzG1tZy.js → socialProofClasses-kwDvwLOZ.js} +1 -1
  198. package/dist/spanx-B4WFA_rI.js +661 -0
  199. package/dist/spanx-BWoE4F8b.cjs +663 -0
  200. package/dist/spanxStaging-BOrOjhXn.js +845 -0
  201. package/dist/spanxStaging-BfdfIug4.cjs +848 -0
  202. package/dist/{suggestionBarV2-types-Penx3Y67.js → suggestionBarV2-types-IMMOmCir.js} +1 -1
  203. package/dist/{suggestionBarV2-types-B3lwrENK.cjs → suggestionBarV2-types-nnGNgFvR.cjs} +1 -1
  204. package/dist/supergoop-22dd5_BS.js +323 -0
  205. package/dist/supergoop-B-a4cku2.cjs +323 -0
  206. package/dist/{test-types-CXVJxTeu.d.ts → test-types-C9b_OdfO.d.ts} +1 -1
  207. package/dist/{test-types-CuOq25VT.d.cts → test-types-CgVJtwUr.d.cts} +1 -1
  208. package/dist/types/index.cjs +2 -2
  209. package/dist/types/index.d.cts +2 -2
  210. package/dist/types/index.d.ts +2 -2
  211. package/dist/types/index.js +2 -2
  212. package/dist/types--pr1GQQx.js +154 -0
  213. package/dist/types-BVSyY3Hk.cjs +196 -0
  214. package/dist/{uniqueVintage-BWkDgt1z.js → uniqueVintage-CJXiNNe7.js} +19 -20
  215. package/dist/uniqueVintage-D0jzJWlo.cjs +1213 -0
  216. package/dist/useMessageInterceptor-B87e3yu3.cjs +33 -0
  217. package/dist/useMessageInterceptor-Bb7YRaWk.js +25 -0
  218. package/dist/userIdentityContext-BPqvVIg0.d.cts +20 -0
  219. package/dist/userIdentityContext-wbCRmlzp.d.ts +20 -0
  220. package/dist/utils-C9ZSCx12.js +888 -0
  221. package/dist/utils-D5HO61hG.cjs +1016 -0
  222. package/dist/variantInfo-DbVxA1yE.js +1 -0
  223. package/dist/variantInfo-orXoPBCU.cjs +0 -0
  224. package/dist/venaCbd-Bhhu_qUf.cjs +365 -0
  225. package/dist/venaCbd-CanovPS_.js +365 -0
  226. package/dist/westonJonBoucher-BC0x1ktI.cjs +422 -0
  227. package/dist/{westonJonBoucher-BAGXegsX.js → westonJonBoucher-BUu1_wP1.js} +19 -20
  228. package/dist/wineEnthusiast-BlCryfil.cjs +940 -0
  229. package/dist/{wineEnthusiast-EJbhMeKQ.js → wineEnthusiast-Ck1x5iJq.js} +19 -20
  230. package/dist/wolfMattress-D9Mjq-HP.js +372 -0
  231. package/dist/wolfMattress-JssghhC-.cjs +372 -0
  232. package/dist/wolfTactical-C6exYhL7.cjs +349 -0
  233. package/dist/wolfTactical-CnV3KQdI.js +349 -0
  234. package/package.json +100 -19
  235. package/src/{adapters/spiffy/commerce/api.ts → application/commerce-api.ts} +31 -23
  236. package/src/application/models/colorsConfig.ts +18 -18
  237. package/src/application/models/frontendConfig.ts +3 -3
  238. package/src/application/models/graphql/queries/getMerchantColorsQuery.ts +1 -1
  239. package/src/application/models/graphql/queries/getMerchantFrontendConfigQuery.ts +1 -1
  240. package/src/application/models/index.ts +0 -2
  241. package/src/application/models/localStorageEventListener.ts +2 -2
  242. package/src/application/models/utils/snakeToCamelTransformer.ts +8 -8
  243. package/src/application/models/validators/validateGraphQLColorsConfig.ts +0 -21
  244. package/src/application/models/validators/validateGraphQLFrontendConfig.ts +2 -2
  245. package/src/application/utils/analyticsUtils.ts +53 -22
  246. package/src/application/utils/cdnUtils.ts +11 -0
  247. package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +15 -0
  248. package/src/atoms/app/index.ts +7 -17
  249. package/src/atoms/app/variant.ts +13 -4
  250. package/src/atoms/chat/chatState.ts +28 -18
  251. package/src/atoms/chat/messageQueue.ts +36 -5
  252. package/src/atoms/chat/replies.ts +45 -37
  253. package/src/atoms/envive/enviveConfig.ts +10 -6
  254. package/src/atoms/org/graphqlConfig.ts +7 -1
  255. package/src/atoms/org/index.ts +3 -3
  256. package/src/atoms/org/newOrgConfigAtom.ts +8 -0
  257. package/src/atoms/org/orgPageConfig.ts +6 -5
  258. package/src/atoms/search/chatSearch.ts +11 -5
  259. package/src/atoms/search/searchAPI.ts +22 -12
  260. package/src/atoms/search/searchServiceAdapter.ts +25 -0
  261. package/src/contexts/amplitudeContext.tsx +466 -0
  262. package/src/contexts/cdnContext.tsx +48 -0
  263. package/src/contexts/chatContext.tsx +15 -12
  264. package/src/contexts/enviveConfigContext.tsx +22 -17
  265. package/src/contexts/enviveCssContext.tsx +34 -5
  266. package/src/contexts/featureFlagContext.tsx +193 -0
  267. package/src/contexts/featureFlagServiceContext.tsx +87 -0
  268. package/src/contexts/graphqlContext.tsx +165 -0
  269. package/src/contexts/index.ts +13 -3
  270. package/src/contexts/localStorageContext.tsx +159 -0
  271. package/src/contexts/newOrgConfigContext.tsx +104 -0
  272. package/src/contexts/orgConfigContext.tsx +92 -92
  273. package/src/contexts/searchContext.tsx +187 -0
  274. package/src/contexts/sessionStorageContext.tsx +80 -0
  275. package/src/contexts/shopifyUrlContext.tsx +97 -0
  276. package/src/contexts/types.ts +12 -8
  277. package/src/contexts/userIdentityContext.tsx +197 -0
  278. package/src/events/registerAnalyticsListeners.ts +32 -38
  279. package/src/hooks/index.ts +10 -4
  280. package/src/hooks/useAmplitudeOperations.ts +35 -0
  281. package/src/hooks/useAppDetails.ts +49 -0
  282. package/src/hooks/useCdnOperations.ts +16 -0
  283. package/src/hooks/useChatToggle.ts +5 -4
  284. package/src/hooks/useChatToggleAnalytics.ts +15 -0
  285. package/src/hooks/useGraphQLConfig.ts +63 -0
  286. package/src/hooks/useIdentifyUser.ts +33 -0
  287. package/src/hooks/useImageResolver.ts +7 -7
  288. package/src/hooks/useLocalStorageOperations.ts +92 -0
  289. package/src/hooks/useNewOrgConfig.ts +3 -76
  290. package/src/hooks/useSearch.tsx +21 -18
  291. package/src/hooks/useSearchOperations.ts +97 -0
  292. package/src/hooks/useSessionStorageOperations.ts +28 -0
  293. package/src/hooks/useShopifyUrlOperations.ts +45 -0
  294. package/src/hooks/useTrackComponentVisibleEvent.ts +12 -8
  295. package/src/hooks/useUpdateAnalyticsProps.ts +28 -17
  296. package/src/interceptors/index.ts +0 -1
  297. package/src/interceptors/useMessageInterceptor.ts +5 -8
  298. package/src/merchants/bandolier/bandolier.ts +10 -28
  299. package/src/merchants/carpe/carpe.ts +5 -8
  300. package/src/merchants/coterie/coterie.ts +3 -6
  301. package/src/merchants/default.ts +73 -70
  302. package/src/merchants/domInsertion.ts +30 -0
  303. package/src/merchants/dreamlandBaby/dreamlandBaby.ts +12 -6
  304. package/src/merchants/fiveCbd/fiveCbd.ts +7 -13
  305. package/src/merchants/forLoveAndLemons/forLoveAndLemons.ts +44 -14
  306. package/src/merchants/greenpan/greenpan.ts +6 -12
  307. package/src/merchants/gridInsertion.ts +19 -0
  308. package/src/merchants/grooveLife/grooveLife.ts +13 -7
  309. package/src/merchants/homegrownCannabis/homegrownCannabis.ts +12 -6
  310. package/src/merchants/jackArcher/jackArcher.ts +26 -11
  311. package/src/merchants/jordanCraig/jordanCraig.ts +5 -5
  312. package/src/merchants/kindredBravely/kindredBravely.ts +16 -7
  313. package/src/merchants/kutFromTheKloth/kutFromTheKloth.ts +9 -6
  314. package/src/merchants/larryAndSerges/larryAndSerges.ts +6 -2
  315. package/src/merchants/leapsAndRebounds/leapsAndRebounds.ts +7 -7
  316. package/src/merchants/longevityrx/longevityrx.ts +14 -8
  317. package/src/merchants/lookOptic/lookOptic.ts +6 -6
  318. package/src/merchants/mantraBrand/mantraBrand.ts +14 -8
  319. package/src/merchants/medterra/medterra.ts +14 -11
  320. package/src/merchants/modells/modells.ts +6 -9
  321. package/src/merchants/pressedFloral/pressedFloral.ts +7 -13
  322. package/src/merchants/skinPerfection/skinPerfection.ts +13 -7
  323. package/src/merchants/snapSupplements/snapSupplements.ts +13 -10
  324. package/src/merchants/spanx/spanx.ts +6 -6
  325. package/src/merchants/spanx/spanxStaging.ts +6 -12
  326. package/src/merchants/supergoop/supergoop.ts +11 -12
  327. package/src/merchants/uniqueVintage/uniqueVintage.ts +6 -6
  328. package/src/merchants/venaCbd/venaCbd.ts +6 -9
  329. package/src/merchants/westonJonBoucher/westonJonBoucher.ts +6 -6
  330. package/src/merchants/wineEnthusiast/wineEnthusiast.ts +6 -6
  331. package/src/merchants/wolfMattress/wolfMattress.ts +3 -3
  332. package/src/merchants/wolfTactical/wolfTactical.ts +5 -11
  333. package/src/types/config-versions.ts +6 -0
  334. package/src/types.ts +0 -53
  335. package/dist/adapters/amplitude/index.cjs +0 -14
  336. package/dist/adapters/amplitude/index.d.cts +0 -6
  337. package/dist/adapters/amplitude/index.d.ts +0 -6
  338. package/dist/adapters/amplitude/index.js +0 -12
  339. package/dist/api-B2euFL-5.cjs +0 -269
  340. package/dist/api-XRr_lAG6.js +0 -190
  341. package/dist/application/config/index.cjs +0 -43
  342. package/dist/application/config/index.d.cts +0 -15
  343. package/dist/application/config/index.d.ts +0 -15
  344. package/dist/application/config/index.js +0 -41
  345. package/dist/application/service/customerService/index.cjs +0 -4
  346. package/dist/application/service/customerService/index.d.cts +0 -3
  347. package/dist/application/service/customerService/index.d.ts +0 -3
  348. package/dist/application/service/customerService/index.js +0 -4
  349. package/dist/application/service/index.cjs +0 -42
  350. package/dist/application/service/index.d.cts +0 -413
  351. package/dist/application/service/index.d.ts +0 -413
  352. package/dist/application/service/index.js +0 -12
  353. package/dist/atomStore-ONYy0XuA.d.cts +0 -24
  354. package/dist/atomStore-kOKiEcNl.d.ts +0 -24
  355. package/dist/bandolier-Da4wt6sm.cjs +0 -1230
  356. package/dist/bandolier-DzEmYWcz.js +0 -1230
  357. package/dist/carpe-AXipz0Xl.cjs +0 -608
  358. package/dist/carpe-CaUKwcEa.js +0 -606
  359. package/dist/contexts-CtRlNXaS.js +0 -7674
  360. package/dist/contexts-CtgmnYNn.cjs +0 -9088
  361. package/dist/coterie-oKHAT0lx.js +0 -240
  362. package/dist/customerService-BG1uNZZ1.cjs +0 -36
  363. package/dist/customerService-BHQRnLhC.js +0 -23
  364. package/dist/default-B4fINY5_.cjs +0 -4
  365. package/dist/default-BrTQxA0c.js +0 -4
  366. package/dist/default-C3LrcbZB.cjs +0 -199
  367. package/dist/default-CXkYrLEr.js +0 -176
  368. package/dist/dreamlandBaby-BEqt0eKF.js +0 -347
  369. package/dist/dreamlandBaby-DBDjEJCc.cjs +0 -347
  370. package/dist/featureFlagService-5wdmW02z.d.ts +0 -18
  371. package/dist/featureFlagService-DaelrXEk.d.cts +0 -18
  372. package/dist/fiveCbd-CdqNt16h.cjs +0 -614
  373. package/dist/fiveCbd-D6B-sgnX.js +0 -614
  374. package/dist/forLoveAndLemons-C7GsJG7f.cjs +0 -668
  375. package/dist/forLoveAndLemons-gNDlMtPR.js +0 -666
  376. package/dist/greenpan-B5AaW4M_.js +0 -398
  377. package/dist/greenpan-DrORpYms.cjs +0 -398
  378. package/dist/grooveLife-BJqsfH2H.cjs +0 -343
  379. package/dist/grooveLife-xIUmDM8s.js +0 -343
  380. package/dist/homegrownCannabis-8TZ21u6L.cjs +0 -411
  381. package/dist/homegrownCannabis-BtMuEvbZ.js +0 -411
  382. package/dist/index-CKUpnyJQ.d.ts +0 -72
  383. package/dist/index-DFL1dIT_.d.ts +0 -7
  384. package/dist/index-DXpgMVpp.d.ts +0 -749
  385. package/dist/index-MFbPQ8Ji.d.ts +0 -95
  386. package/dist/index-VHFMGkO-.d.cts +0 -72
  387. package/dist/index-VSFakgAI.d.cts +0 -95
  388. package/dist/index-aNW5V9fh.d.cts +0 -749
  389. package/dist/index-zZjcds15.d.cts +0 -7
  390. package/dist/jackArcher-WtkbLBZj.cjs +0 -728
  391. package/dist/jordanCraig-471FcgqF.cjs +0 -1787
  392. package/dist/jordanCraig-DNOncplU.js +0 -1787
  393. package/dist/kindredBravely-BlLyHGMX.cjs +0 -491
  394. package/dist/kindredBravely-cqZ4OvXp.js +0 -491
  395. package/dist/kutFromTheKloth-3mOIryvt.cjs +0 -370
  396. package/dist/kutFromTheKloth-DtVNCMKa.js +0 -370
  397. package/dist/larryAndSerges-88Bvq-Us.cjs +0 -262
  398. package/dist/larryAndSerges-cvak6May.js +0 -262
  399. package/dist/leapsAndRebounds-Dmf8eUPq.js +0 -361
  400. package/dist/leapsAndRebounds-iWKc923H.cjs +0 -361
  401. package/dist/logger-Dln20ans.cjs +0 -26
  402. package/dist/logger-pdEEY8T2.js +0 -20
  403. package/dist/longevityrx-BTMI9vn-.js +0 -321
  404. package/dist/longevityrx-CobPyigd.cjs +0 -321
  405. package/dist/lookOptic-C4H_c0JZ.cjs +0 -283
  406. package/dist/mantraBrand-CySGqbn6.cjs +0 -751
  407. package/dist/medterra-BnZ5p27n.cjs +0 -584
  408. package/dist/medterra-DaICcPPp.js +0 -584
  409. package/dist/modells-CZ1L6dD_.js +0 -485
  410. package/dist/modells-DF0SndHr.cjs +0 -485
  411. package/dist/orgConfigResults--dAwtw3W.d.ts +0 -881
  412. package/dist/orgConfigResults-BL0XBA6x.d.cts +0 -881
  413. package/dist/pressedFloral-B3t2cYzs.cjs +0 -662
  414. package/dist/pressedFloral-Dsws2Kfb.js +0 -662
  415. package/dist/skinPerfection-CILQM2bR.cjs +0 -335
  416. package/dist/skinPerfection-DmQCntRf.js +0 -335
  417. package/dist/snapSupplements--X_v0KRM.js +0 -286
  418. package/dist/snapSupplements-Djuzl0Ed.cjs +0 -286
  419. package/dist/spanx-Bo81yXSF.cjs +0 -664
  420. package/dist/spanx-DauxB8KE.js +0 -662
  421. package/dist/spanxStaging-BucYQvR1.cjs +0 -849
  422. package/dist/spanxStaging-CfXUukdP.js +0 -846
  423. package/dist/supergoop-8qa_NV3F.cjs +0 -338
  424. package/dist/supergoop-DOaui-A6.js +0 -336
  425. package/dist/types-CD4LFta-.d.cts +0 -33
  426. package/dist/types-CGC6Oozp.cjs +0 -231
  427. package/dist/types-CnTCkyvK.js +0 -177
  428. package/dist/types-DBdI0j89.d.ts +0 -33
  429. package/dist/uniqueVintage-DAne8XcL.cjs +0 -1214
  430. package/dist/variant-CC1nrywd.d.ts +0 -13
  431. package/dist/variant-CQTuQQSq.d.cts +0 -13
  432. package/dist/venaCbd-B1HO_Pkr.cjs +0 -366
  433. package/dist/venaCbd-CnByO-5R.js +0 -366
  434. package/dist/westonJonBoucher-BRfHWMbs.cjs +0 -423
  435. package/dist/wineEnthusiast-DW8JVwV8.cjs +0 -941
  436. package/dist/wolfMattress-B6INZNRJ.cjs +0 -373
  437. package/dist/wolfMattress-D9P7ErH_.js +0 -373
  438. package/dist/wolfTactical-C5Pupi3J.js +0 -350
  439. package/dist/wolfTactical-TMthZM93.cjs +0 -350
  440. package/src/adapters/amplitude/amplitudeAdapter.ts +0 -477
  441. package/src/adapters/amplitude/index.ts +0 -2
  442. package/src/adapters/amplitude/stubAmplitudeAdapter.ts +0 -34
  443. package/src/adapters/spiffy/commerce/graphql.ts +0 -219
  444. package/src/application/config/generalStaticConfig.ts +0 -40
  445. package/src/application/config/index.ts +0 -1
  446. package/src/application/models/domMutationContinuation.ts +0 -7
  447. package/src/application/models/domObservationStrategy.ts +0 -9
  448. package/src/application/service/cachingService.ts +0 -84
  449. package/src/application/service/cdnService.ts +0 -20
  450. package/src/application/service/customerService/index.ts +0 -8
  451. package/src/application/service/customerService/providers/UnsupportedCustomerService.ts +0 -15
  452. package/src/application/service/domMutationObserver.ts +0 -320
  453. package/src/application/service/domMutations/GridInsertionService.ts +0 -123
  454. package/src/application/service/domMutations/dataLayer/dataLayerEventsListener.ts +0 -99
  455. package/src/application/service/domMutations/domInsertionService.ts +0 -90
  456. package/src/application/service/domMutations/domMutationListener.ts +0 -15
  457. package/src/application/service/domMutations/domMutationListenerState.ts +0 -52
  458. package/src/application/service/domMutations/floatingChat/embeddedChatsPlacementsListener.ts +0 -41
  459. package/src/application/service/domMutations/gladly/gladlyListener.ts +0 -61
  460. package/src/application/service/domMutations/spiffy/orgs/common/kustomerVisibilityListener.ts +0 -41
  461. package/src/application/service/domMutations/spiffy/orgs/common/orgsCommonDataLayerListener.ts +0 -119
  462. package/src/application/service/featureFlagService.ts +0 -130
  463. package/src/application/service/graphqlConfigService.ts +0 -59
  464. package/src/application/service/index.ts +0 -32
  465. package/src/application/service/kustomerIntegrationService.ts +0 -111
  466. package/src/application/service/localStorageService.ts +0 -77
  467. package/src/application/service/pageVariantService.ts +0 -866
  468. package/src/application/service/searchService.ts +0 -147
  469. package/src/application/service/sessionStorageService.ts +0 -27
  470. package/src/application/service/shopifyUrlService.ts +0 -63
  471. package/src/application/service/userIdentityService.ts +0 -114
  472. package/src/application/service/windowChatToggleService.ts +0 -80
  473. package/src/application/service/windowDataLayerService.ts +0 -181
  474. package/src/application/service/windowFrontendConfigService.ts +0 -129
  475. package/src/atoms/org/merchantCss.ts +0 -161
  476. package/src/atoms/org/org.ts +0 -251
  477. package/src/atoms/org/orgUIConfig.ts +0 -142
  478. package/src/enabled-features.ts +0 -83
  479. package/src/hooks/useDynamicVariants.ts +0 -226
  480. package/src/hooks/useFileUpload.ts +0 -63
  481. package/src/hooks/useHideElements.ts +0 -85
  482. package/src/interceptors/useFormEscalation.ts +0 -57
  483. /package/dist/{locators-DnKpajbY.js → atomStore-CZnUUsrr.js} +0 -0
  484. /package/dist/{locators-CugndTUM.cjs → atomStore-KSoFS3Jj.cjs} +0 -0
  485. /package/dist/{utilityTypes-C4h2wgAK.cjs → locators-0YYZu9n4.cjs} +0 -0
  486. /package/dist/{utilityTypes-BVikejDo.js → locators-fBXS_pxP.js} +0 -0
  487. /package/dist/{variantInfo-CzhR5W6h.js → utilityTypes-8sETsYPk.js} +0 -0
  488. /package/dist/{variantInfo-CNRTY0gH.cjs → utilityTypes-COShxVir.cjs} +0 -0
  489. /package/src/{application/service/customerService/types.ts → types/customerService.ts} +0 -0
  490. /package/src/{adapters/spiffy/commerce → types}/exceptions/sessionExceptions.ts +0 -0
  491. /package/src/{adapters/spiffy/commerce → types}/exceptions/unsupportedProductExceptions.ts +0 -0
@@ -0,0 +1,16 @@
1
+ const require_enviveConfig = require('./enviveConfig-BccuzS2a.cjs');
2
+ const require_atomStore = require('./atomStore-B4jIaDPd.cjs');
3
+
4
+ //#region src/application/utils/cdnUtils.ts
5
+ const getCdnAssetURL = (assetName, orgShortName) => {
6
+ return `${require_atomStore.getAtomStore().get(require_enviveConfig.cdnUrlAtom) || "https://cdn.spiffy.ai/other"}/assets/${orgShortName}/${assetName}`;
7
+ };
8
+
9
+ //#endregion
10
+ Object.defineProperty(exports, 'getCdnAssetURL', {
11
+ enumerable: true,
12
+ get: function () {
13
+ return getCdnAssetURL;
14
+ }
15
+ });
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RuVXRpbHMtMzJ2OGJEWDkuY2pzIiwibmFtZXMiOlsiZ2V0QXRvbVN0b3JlIiwiY2RuVXJsQXRvbSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9hcHBsaWNhdGlvbi91dGlscy9jZG5VdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRBdG9tU3RvcmUgfSBmcm9tIFwic3JjL2F0b21zL2F0b21TdG9yZS9hdG9tU3RvcmVcIjtcbmltcG9ydCB7IGNkblVybEF0b20gfSBmcm9tIFwic3JjL2F0b21zL2Vudml2ZS9lbnZpdmVDb25maWdcIjtcblxuZXhwb3J0IGNvbnN0IGdldENkbkFzc2V0VVJMID0gKFxuICBhc3NldE5hbWU6IHN0cmluZyxcbiAgb3JnU2hvcnROYW1lOiBzdHJpbmdcbik6IHN0cmluZyA9PiB7XG4gIGNvbnN0IGF0b21TdG9yZSA9IGdldEF0b21TdG9yZSgpO1xuICBjb25zdCBjZG5VcmwgPSBhdG9tU3RvcmUuZ2V0KGNkblVybEF0b20pIHx8IFwiaHR0cHM6Ly9jZG4uc3BpZmZ5LmFpL290aGVyXCI7XG4gIHJldHVybiBgJHtjZG5Vcmx9L2Fzc2V0cy8ke29yZ1Nob3J0TmFtZX0vJHthc3NldE5hbWV9YDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFHQSxNQUFhLGtCQUNYLFdBQ0EsaUJBQ1c7QUFHWCxRQUFPLEdBRldBLGdDQUFjLENBQ1AsSUFBSUMsZ0NBQVcsSUFBSSw4QkFDM0IsVUFBVSxhQUFhLEdBQUcifQ==
@@ -0,0 +1,11 @@
1
+ import { cdnUrlAtom } from "./enviveConfig-CzhTz8Aa.js";
2
+ import { getAtomStore } from "./atomStore-D8pjE1vL.js";
3
+
4
+ //#region src/application/utils/cdnUtils.ts
5
+ const getCdnAssetURL = (assetName, orgShortName) => {
6
+ return `${getAtomStore().get(cdnUrlAtom) || "https://cdn.spiffy.ai/other"}/assets/${orgShortName}/${assetName}`;
7
+ };
8
+
9
+ //#endregion
10
+ export { getCdnAssetURL };
11
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RuVXRpbHMtRTR0TEJ0MmcuanMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uL3V0aWxzL2NkblV0aWxzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldEF0b21TdG9yZSB9IGZyb20gXCJzcmMvYXRvbXMvYXRvbVN0b3JlL2F0b21TdG9yZVwiO1xuaW1wb3J0IHsgY2RuVXJsQXRvbSB9IGZyb20gXCJzcmMvYXRvbXMvZW52aXZlL2Vudml2ZUNvbmZpZ1wiO1xuXG5leHBvcnQgY29uc3QgZ2V0Q2RuQXNzZXRVUkwgPSAoXG4gIGFzc2V0TmFtZTogc3RyaW5nLFxuICBvcmdTaG9ydE5hbWU6IHN0cmluZ1xuKTogc3RyaW5nID0+IHtcbiAgY29uc3QgYXRvbVN0b3JlID0gZ2V0QXRvbVN0b3JlKCk7XG4gIGNvbnN0IGNkblVybCA9IGF0b21TdG9yZS5nZXQoY2RuVXJsQXRvbSkgfHwgXCJodHRwczovL2Nkbi5zcGlmZnkuYWkvb3RoZXJcIjtcbiAgcmV0dXJuIGAke2NkblVybH0vYXNzZXRzLyR7b3JnU2hvcnROYW1lfS8ke2Fzc2V0TmFtZX1gO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7OztBQUdBLE1BQWEsa0JBQ1gsV0FDQSxpQkFDVztBQUdYLFFBQU8sR0FGVyxjQUFjLENBQ1AsSUFBSSxXQUFXLElBQUksOEJBQzNCLFVBQVUsYUFBYSxHQUFHIn0=
@@ -149,4 +149,4 @@ Object.defineProperty(exports, 'TAG_TESTID', {
149
149
  return TAG_TESTID;
150
150
  }
151
151
  });
152
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1fTnpwT19Ibi5janMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy9sb2NhdG9ycy9jb21wb25lbnRzL2NoYXQvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVGVzdCBpZHMgZm9yIGNvbXBvbmVudHMgcmVuZGVyZWQgaW5zaWRlIHRoZSBjaGF0IG1vZGFsLCBhbmQgdGhlIGNoYXQgbW9kYWxcbmV4cG9ydCBjb25zdCBDSEFUX0NPTlRBSU5FUl9JRCA9ICcjc3BpZmZ5LW1vZGFsLWNvbnRhaW5lcic7XG5leHBvcnQgY29uc3QgQ0hBVF9IRUFERVJfQ09OVEFJTkVSX1RFU1RJRCA9ICdzcGlmZnktY2hhdC1oZWFkZXItY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBDSEFUX0hFQURFUl9DTE9TRV9CVVRUT05fVEVTVElEID0gJ3NwaWZmeS1jaGF0LWhlYWRlci1jbG9zZS1idXR0b24nO1xuZXhwb3J0IGNvbnN0IENIQVRfTUVTU0FHRV9DT05UQUlORVJfVEVTVElEID0gJ3NwaWZmeS1jaGF0LW1lc3NhZ2UtY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBDSEFUX01FU1NBR0VfRElWSURFUl9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtbWVzc2FnZS1kaXZpZGVyJztcbmV4cG9ydCBjb25zdCBDSEFUX01PREFMX1RFU1RJRCA9ICdzcGlmZnktbW9kYWwtc2hhZG93LWRvbS1jb250YWluZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfUkVQTFlfSU5QVVRfVEVTVElEID0gJ3NwaWZmeS1jaGF0LXJlcGx5LWlucHV0JztcbmV4cG9ydCBjb25zdCBDSEFUX1JFUExZX0lOUFVUX1NFTkRfQlVUVE9OX1RFU1RJRCA9ICdzcGlmZnktY2hhdC1yZXBseS1pbnB1dC1zZW5kLWJ1dHRvbic7XG5leHBvcnQgY29uc3QgQ0hBVF9WSUVXX1BSRVZJT1VTX01FU1NBR0VTX1RFU1RJRCA9ICdzcGlmZnktY2hhdC12aWV3LXByZXZpb3VzLW1lc3NhZ2VzJztcbmV4cG9ydCBjb25zdCBEWU5BTUlDX0NBUk9VU0VMX1RFU1RJRCA9ICdkeW5hbWljLWNhcm91c2VsJztcbmV4cG9ydCBjb25zdCBJTUFHRV9TVEFDS19URVNUSUQgPSAnc3BpZmZ5LXByb2R1Y3QtY29tcGFyaXNvbi1pbWFnZS1zdGFjayc7XG5leHBvcnQgY29uc3QgSU1BR0VfU1RBQ0tfRklSU1RfSU1BR0VfVEVTVElEID0gJ3NwaWZmeS1wcm9kdWN0LWNvbXBhcmlzb24taW1hZ2Utc3RhY2stZmlyc3QtaW1hZ2UnO1xuZXhwb3J0IGNvbnN0IElNQUdFX1NUQUNLX1NFQ09ORF9JTUFHRV9URVNUSUQgPSAnc3BpZmZ5LXByb2R1Y3QtY29tcGFyaXNvbi1pbWFnZS1zdGFjay1zZWNvbmQtaW1hZ2UnO1xuZXhwb3J0IGNvbnN0IExPQURJTkdfTUVTU0FHRV9DT05UQUlORVJfVEVTVElEID0gJ3NwaWZmeS1tZXNzYWdlcy1sb2FkaW5nLWNvbnRhaW5lcic7XG5leHBvcnQgY29uc3QgTU9CSUxFX0NIQVRfSEVBREVSX1RFU1RJRCA9ICdzcGlmZnktbW9iaWxlLWNoYXQtaGVhZGVyJztcbmV4cG9ydCBjb25zdCBTQ1JPTExBQkxFX1NVR0dFU1RJT05TX1RFU1RJRCA9ICdzcGlmZnktc2Nyb2xsYWJsZS1zdWdnZXN0aW9ucyc7XG5leHBvcnQgY29uc3QgU1VHR0VTVElPTl9CQVJfVEVTVElEID0gJ3NwaWZmeS1zdWdnZXN0aW9uLWJhcic7XG5leHBvcnQgY29uc3QgU1VHR0VTVElPTl9CQVJfQlVUVE9OX1RFU1RJRCA9ICdzcGlmZnktc3VnZ2VzdGlvbi1iYXItYnV0dG9uJztcbmV4cG9ydCBjb25zdCBTVUdHRVNUSU9OX0JVVFRPTl9URVNUSUQgPSAnc3BpZmZ5LXN1Z2dlc3Rpb24tYnV0dG9uJztcblxuZXhwb3J0IGNvbnN0IFRBR19URVNUSUQgPSAnc3BpZmZ5LXRhZyc7XG5leHBvcnQgY29uc3QgQU5JTUFURURfTUVTU0FHRVNfVEVTVElEID0gJ3NwaWZmeS1hbmltYXRlZC1tZXNzYWdlcyc7XG4iXSwibWFwcGluZ3MiOiI7O0FBQ0EsTUFBYSxvQkFBb0I7QUFDakMsTUFBYSwrQkFBK0I7QUFDNUMsTUFBYSxrQ0FBa0M7QUFDL0MsTUFBYSxnQ0FBZ0M7QUFDN0MsTUFBYSw4QkFBOEI7QUFDM0MsTUFBYSxvQkFBb0I7QUFDakMsTUFBYSwwQkFBMEI7QUFDdkMsTUFBYSxzQ0FBc0M7QUFDbkQsTUFBYSxxQ0FBcUM7QUFDbEQsTUFBYSwwQkFBMEI7QUFDdkMsTUFBYSxxQkFBcUI7QUFDbEMsTUFBYSxpQ0FBaUM7QUFDOUMsTUFBYSxrQ0FBa0M7QUFDL0MsTUFBYSxtQ0FBbUM7QUFDaEQsTUFBYSw0QkFBNEI7QUFDekMsTUFBYSxnQ0FBZ0M7QUFDN0MsTUFBYSx3QkFBd0I7QUFDckMsTUFBYSwrQkFBK0I7QUFDNUMsTUFBYSwyQkFBMkI7QUFFeEMsTUFBYSxhQUFhO0FBQzFCLE1BQWEsMkJBQTJCIn0=
152
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1CdWJDVzFhcy5janMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy9sb2NhdG9ycy9jb21wb25lbnRzL2NoYXQvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gVGVzdCBpZHMgZm9yIGNvbXBvbmVudHMgcmVuZGVyZWQgaW5zaWRlIHRoZSBjaGF0IG1vZGFsLCBhbmQgdGhlIGNoYXQgbW9kYWxcbmV4cG9ydCBjb25zdCBDSEFUX0NPTlRBSU5FUl9JRCA9ICcjc3BpZmZ5LW1vZGFsLWNvbnRhaW5lcic7XG5leHBvcnQgY29uc3QgQ0hBVF9IRUFERVJfQ09OVEFJTkVSX1RFU1RJRCA9ICdzcGlmZnktY2hhdC1oZWFkZXItY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBDSEFUX0hFQURFUl9DTE9TRV9CVVRUT05fVEVTVElEID0gJ3NwaWZmeS1jaGF0LWhlYWRlci1jbG9zZS1idXR0b24nO1xuZXhwb3J0IGNvbnN0IENIQVRfTUVTU0FHRV9DT05UQUlORVJfVEVTVElEID0gJ3NwaWZmeS1jaGF0LW1lc3NhZ2UtY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBDSEFUX01FU1NBR0VfRElWSURFUl9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtbWVzc2FnZS1kaXZpZGVyJztcbmV4cG9ydCBjb25zdCBDSEFUX01PREFMX1RFU1RJRCA9ICdzcGlmZnktbW9kYWwtc2hhZG93LWRvbS1jb250YWluZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfUkVQTFlfSU5QVVRfVEVTVElEID0gJ3NwaWZmeS1jaGF0LXJlcGx5LWlucHV0JztcbmV4cG9ydCBjb25zdCBDSEFUX1JFUExZX0lOUFVUX1NFTkRfQlVUVE9OX1RFU1RJRCA9ICdzcGlmZnktY2hhdC1yZXBseS1pbnB1dC1zZW5kLWJ1dHRvbic7XG5leHBvcnQgY29uc3QgQ0hBVF9WSUVXX1BSRVZJT1VTX01FU1NBR0VTX1RFU1RJRCA9ICdzcGlmZnktY2hhdC12aWV3LXByZXZpb3VzLW1lc3NhZ2VzJztcbmV4cG9ydCBjb25zdCBEWU5BTUlDX0NBUk9VU0VMX1RFU1RJRCA9ICdkeW5hbWljLWNhcm91c2VsJztcbmV4cG9ydCBjb25zdCBJTUFHRV9TVEFDS19URVNUSUQgPSAnc3BpZmZ5LXByb2R1Y3QtY29tcGFyaXNvbi1pbWFnZS1zdGFjayc7XG5leHBvcnQgY29uc3QgSU1BR0VfU1RBQ0tfRklSU1RfSU1BR0VfVEVTVElEID0gJ3NwaWZmeS1wcm9kdWN0LWNvbXBhcmlzb24taW1hZ2Utc3RhY2stZmlyc3QtaW1hZ2UnO1xuZXhwb3J0IGNvbnN0IElNQUdFX1NUQUNLX1NFQ09ORF9JTUFHRV9URVNUSUQgPSAnc3BpZmZ5LXByb2R1Y3QtY29tcGFyaXNvbi1pbWFnZS1zdGFjay1zZWNvbmQtaW1hZ2UnO1xuZXhwb3J0IGNvbnN0IExPQURJTkdfTUVTU0FHRV9DT05UQUlORVJfVEVTVElEID0gJ3NwaWZmeS1tZXNzYWdlcy1sb2FkaW5nLWNvbnRhaW5lcic7XG5leHBvcnQgY29uc3QgTU9CSUxFX0NIQVRfSEVBREVSX1RFU1RJRCA9ICdzcGlmZnktbW9iaWxlLWNoYXQtaGVhZGVyJztcbmV4cG9ydCBjb25zdCBTQ1JPTExBQkxFX1NVR0dFU1RJT05TX1RFU1RJRCA9ICdzcGlmZnktc2Nyb2xsYWJsZS1zdWdnZXN0aW9ucyc7XG5leHBvcnQgY29uc3QgU1VHR0VTVElPTl9CQVJfVEVTVElEID0gJ3NwaWZmeS1zdWdnZXN0aW9uLWJhcic7XG5leHBvcnQgY29uc3QgU1VHR0VTVElPTl9CQVJfQlVUVE9OX1RFU1RJRCA9ICdzcGlmZnktc3VnZ2VzdGlvbi1iYXItYnV0dG9uJztcbmV4cG9ydCBjb25zdCBTVUdHRVNUSU9OX0JVVFRPTl9URVNUSUQgPSAnc3BpZmZ5LXN1Z2dlc3Rpb24tYnV0dG9uJztcblxuZXhwb3J0IGNvbnN0IFRBR19URVNUSUQgPSAnc3BpZmZ5LXRhZyc7XG5leHBvcnQgY29uc3QgQU5JTUFURURfTUVTU0FHRVNfVEVTVElEID0gJ3NwaWZmeS1hbmltYXRlZC1tZXNzYWdlcyc7XG4iXSwibWFwcGluZ3MiOiI7O0FBQ0EsTUFBYSxvQkFBb0I7QUFDakMsTUFBYSwrQkFBK0I7QUFDNUMsTUFBYSxrQ0FBa0M7QUFDL0MsTUFBYSxnQ0FBZ0M7QUFDN0MsTUFBYSw4QkFBOEI7QUFDM0MsTUFBYSxvQkFBb0I7QUFDakMsTUFBYSwwQkFBMEI7QUFDdkMsTUFBYSxzQ0FBc0M7QUFDbkQsTUFBYSxxQ0FBcUM7QUFDbEQsTUFBYSwwQkFBMEI7QUFDdkMsTUFBYSxxQkFBcUI7QUFDbEMsTUFBYSxpQ0FBaUM7QUFDOUMsTUFBYSxrQ0FBa0M7QUFDL0MsTUFBYSxtQ0FBbUM7QUFDaEQsTUFBYSw0QkFBNEI7QUFDekMsTUFBYSxnQ0FBZ0M7QUFDN0MsTUFBYSx3QkFBd0I7QUFDckMsTUFBYSwrQkFBK0I7QUFDNUMsTUFBYSwyQkFBMkI7QUFFeEMsTUFBYSxhQUFhO0FBQzFCLE1BQWEsMkJBQTJCIn0=
@@ -0,0 +1,506 @@
1
+ const require_chunk = require('./chunk-CUT6urMc.cjs');
2
+ const require_models = require('./models-BkXg5eIP.cjs');
3
+ const require_api = require('./api-_JaUnIUj.cjs');
4
+ const require_enviveConfig = require('./enviveConfig-BccuzS2a.cjs');
5
+ const require_atomStore = require('./atomStore-B4jIaDPd.cjs');
6
+ const require_app = require('./app-CnKRZ9RW.cjs');
7
+ const require_amplitudeContext = require('./amplitudeContext-D-7fmVh1.cjs');
8
+ const require_graphqlConfig = require('./graphqlConfig-DicykC-o.cjs');
9
+ let jotai = require("jotai");
10
+ jotai = require_chunk.__toESM(jotai);
11
+ let __spiffy_ai_commerce_api_client = require("@spiffy-ai/commerce-api-client");
12
+ __spiffy_ai_commerce_api_client = require_chunk.__toESM(__spiffy_ai_commerce_api_client);
13
+ let jotai_utils = require("jotai/utils");
14
+ jotai_utils = require_chunk.__toESM(jotai_utils);
15
+ let uuid = require("uuid");
16
+ uuid = require_chunk.__toESM(uuid);
17
+ let __spiffy_ai_commerce_api_client_dist_models_UserEventCategory = require("@spiffy-ai/commerce-api-client/dist/models/UserEventCategory");
18
+ __spiffy_ai_commerce_api_client_dist_models_UserEventCategory = require_chunk.__toESM(__spiffy_ai_commerce_api_client_dist_models_UserEventCategory);
19
+
20
+ //#region src/atoms/chat/chatState.ts
21
+ const userHasRepliedAtom = (0, jotai.atom)(false);
22
+ const replyEventCategoryAtom = (0, jotai.atom)(__spiffy_ai_commerce_api_client_dist_models_UserEventCategory.UserEventCategory.AppLoaded);
23
+ const userQueryAtom = (0, jotai.atom)();
24
+ const suggestionAtom = (0, jotai.atom)(void 0);
25
+ const askQuestionBtnClickedAtom = (0, jotai.atom)(false);
26
+ const messagesAtom = (0, jotai.atom)([]);
27
+ const userEventsAtom = (0, jotai.atom)([]);
28
+ const suggestionsAtom = (0, jotai.atom)([]);
29
+ const suggestionsLoadingAtom = (0, jotai.atom)(false);
30
+ const responseStreamingAtom = (0, jotai.atom)(false);
31
+ const chatIsOpenAtom = (0, jotai.atom)(false);
32
+ const requestFailureAtom = (0, jotai.atom)(false);
33
+ const formSubmitAtom = (0, jotai.atom)();
34
+ const chatOnToggleAtom = (0, jotai.atom)(null, (get, set, triggerLocation, track) => {
35
+ const isOpen = get(chatIsOpenAtom);
36
+ set(chatIsOpenAtom, !isOpen);
37
+ if (!isOpen) {
38
+ window.dispatchEvent(new CustomEvent(require_models.SpiffyEventName.WidgetOpen));
39
+ track?.(require_amplitudeContext.SpiffyMetricsEventName.ChatComponentExpanded, { message_metadata: { trigger_location: triggerLocation } });
40
+ } else {
41
+ window.dispatchEvent(new CustomEvent(require_models.SpiffyEventName.WidgetClose));
42
+ track?.(require_amplitudeContext.SpiffyMetricsEventName.ChatComponentCollapsed);
43
+ }
44
+ });
45
+
46
+ //#endregion
47
+ //#region src/atoms/chat/messageQueue.ts
48
+ const internalUserEventQueueAtom = (0, jotai.atom)([]);
49
+ const userEventQueueAtom = (0, jotai.atom)((get) => {
50
+ const queue = get(internalUserEventQueueAtom);
51
+ return queue === void 0 ? [] : queue.filter((v) => v !== void 0);
52
+ });
53
+ /**
54
+ * This atom is used to queue a new message for processing on `next_responses`
55
+ * It receives a single `userEvent` that is added to the processing queue.
56
+ * If the event has the same eventId as an existing message in the queue the NEW
57
+ * event is ignored
58
+ */
59
+ const queueUserEventAtom = (0, jotai.atom)(null, (get, set, userEvent) => {
60
+ if (userEvent === void 0) return;
61
+ set(internalUserEventQueueAtom, [...get(internalUserEventQueueAtom), userEvent]);
62
+ });
63
+ /**
64
+ * This atom exposes a function to reset the entire queue. All messages in the queue will be purged
65
+ */
66
+ const clearUserEventAtom = (0, jotai.atom)(null, (_, set) => {
67
+ set(internalUserEventQueueAtom, []);
68
+ });
69
+ /**
70
+ * This atom is used to mark events as processed and remove them from the queue
71
+ * It accepts a list of eventId values and will remove all events with those eventIds from the queue.
72
+ */
73
+ const processUserEventAtom = (0, jotai.atom)(null, (get, set, eventIds) => {
74
+ const remaining = get(internalUserEventQueueAtom)?.filter((event) => !eventIds.includes(event.eventId));
75
+ set(internalUserEventQueueAtom, remaining);
76
+ });
77
+ const userQueueEventCountAtom = (0, jotai.atom)((get) => get(userEventQueueAtom).length);
78
+ const createResponsePayload = ({ userEvents, generationParams }) => {
79
+ const atomStore = require_atomStore.getAtomStore();
80
+ const orgShortName = atomStore.get(require_enviveConfig.orgShortNameAtom);
81
+ const orgId = atomStore.get(require_graphqlConfig.orgIdAtom);
82
+ const userId = atomStore.get(require_app.userIdAtom);
83
+ const chatId = atomStore.get(require_app.chatIdAtom);
84
+ const source = atomStore.get(require_enviveConfig.contextSourceAtom);
85
+ const env = atomStore.get(require_enviveConfig.envAtom);
86
+ const featureFlagService = atomStore.get(require_graphqlConfig.featureFlagServiceAtom);
87
+ const context = {
88
+ userId: userId ?? "",
89
+ org_id: orgId ?? "",
90
+ org_short_name: orgShortName ?? "",
91
+ chat_id: chatId ?? "",
92
+ source: source ?? __spiffy_ai_commerce_api_client.ContextSourceEnum.App,
93
+ env: env ?? __spiffy_ai_commerce_api_client.ContextEnvEnum.Dev
94
+ };
95
+ const featureFlags = featureFlagService?.featureFlagService?.getFeatureFlags() || {};
96
+ return {
97
+ id: (0, uuid.v4)(),
98
+ context,
99
+ userEvents,
100
+ featureFlags: Object.fromEntries(Object.entries(featureFlags).filter(([, isEnabled]) => isEnabled)),
101
+ generationParams
102
+ };
103
+ };
104
+
105
+ //#endregion
106
+ //#region src/atoms/amplitude/amplitudeTrackEventAtom.ts
107
+ const amplitudeTrackEventAtom = (0, jotai.atom)(null);
108
+
109
+ //#endregion
110
+ //#region src/atoms/chat/replies.ts
111
+ const handleReplyAtom = (0, jotai.atom)(null, (get, set, { message, userTyped }) => {
112
+ if (message.type !== require_models.MessageType.QueryTyped) return;
113
+ const trackEvent = get(amplitudeTrackEventAtom);
114
+ const queryTyped = message.metadata.content;
115
+ set(replyEventCategoryAtom, __spiffy_ai_commerce_api_client.UserEventCategory.QueryTyped);
116
+ set(userQueryAtom, queryTyped);
117
+ set(messagesAtom, [...get(messagesAtom), [message]]);
118
+ set(userHasRepliedAtom, true);
119
+ set(queueUserEventAtom, {
120
+ eventId: message.id,
121
+ createdAt: message.createdAt,
122
+ category: __spiffy_ai_commerce_api_client.UserEventCategory.QueryTyped,
123
+ attributes: { query: queryTyped }
124
+ });
125
+ if (trackEvent) trackEvent({
126
+ eventName: require_amplitudeContext.SpiffyMetricsEventName.ChatUserMessageInput,
127
+ eventProps: {
128
+ message_id: message.id,
129
+ message_role: message.role,
130
+ message_type: message.type,
131
+ message_metadata: {
132
+ content: message?.metadata?.content,
133
+ created_at: message.createdAt,
134
+ user_typed: userTyped
135
+ }
136
+ },
137
+ alsoSendToGoogleAnalytics: true
138
+ });
139
+ });
140
+
141
+ //#endregion
142
+ //#region src/atoms/chat/performanceMetrics.ts
143
+ const APP_INITIAL_START_TIME_KEY = "spiffy-app-initial-start-time";
144
+ const PAGE_LOAD_OFFSET_TIME_KEY = "spiffy-page-load-offset-time";
145
+ /**
146
+ * The different performance metrics that can be logged. All times are relative to the
147
+ * initial start time of the app and are stored in milliseconds.
148
+ */
149
+ let PerfMetricsEvents = /* @__PURE__ */ function(PerfMetricsEvents$1) {
150
+ PerfMetricsEvents$1["PageLoadOffset"] = "page_load_offset_ms";
151
+ PerfMetricsEvents$1["MainBundleLoaded"] = "main_bundle_loaded_ms";
152
+ PerfMetricsEvents$1["OrgConfigLoadStarted"] = "org_config_load_started_ms";
153
+ PerfMetricsEvents$1["OrgConfigLoadEnded"] = "org_config_load_ended_ms";
154
+ PerfMetricsEvents$1["FirstResponseStarted"] = "first_response_started_ms";
155
+ PerfMetricsEvents$1["FirstResponseCompleted"] = "first_response_completed_ms";
156
+ PerfMetricsEvents$1["FirstSuggestionsStarted"] = "first_suggestions_started_ms";
157
+ PerfMetricsEvents$1["FirstSuggestionsCompleted"] = "first_suggestions_completed_ms";
158
+ PerfMetricsEvents$1["EmbeddedWidgetRendered"] = "embedded_widget_rendered_ms";
159
+ PerfMetricsEvents$1["FloatingButtonRendered"] = "floating_button_rendered_ms";
160
+ PerfMetricsEvents$1["TopSuggestionsBarRendered"] = "top_suggestions_bar_rendered_ms";
161
+ PerfMetricsEvents$1["BottomSuggestionsBarRendered"] = "bottom_suggestions_bar_rendered_ms";
162
+ PerfMetricsEvents$1["SearchPromptRendered"] = "search_prompt_rendered_ms";
163
+ return PerfMetricsEvents$1;
164
+ }({});
165
+ const internalPerfMetricsAtom = (0, jotai.atom)(/* @__PURE__ */ new Map());
166
+ const appInitialStartTimeMsAtom = (0, jotai_utils.atomWithStorage)(APP_INITIAL_START_TIME_KEY, sessionStorage.getItem(APP_INITIAL_START_TIME_KEY) ?? void 0, require_atomStore.sessionStorageUtil, { getOnInit: true });
167
+ const pageLoadOffsetTimeAtom = (0, jotai_utils.atomWithStorage)(PAGE_LOAD_OFFSET_TIME_KEY, sessionStorage.getItem(PAGE_LOAD_OFFSET_TIME_KEY) ?? void 0, require_atomStore.sessionStorageUtil, { getOnInit: true });
168
+ /**
169
+ * Resets the performance metrics atom to an empty map. This should be called after the performance
170
+ * metrics have been reported to amplitude. On SPA, it ensures that we can still capture metrics as
171
+ * the user navigates around the app (although there is more work to be done to fully enable this).
172
+ * On non-SPA, it ensures that previously captured metrics are not reported again.
173
+ */
174
+ const resetPerformanceMetricsAtom = () => {
175
+ require_atomStore.getAtomStore().set(internalPerfMetricsAtom, /* @__PURE__ */ new Map());
176
+ };
177
+ const performanceMetricsAtom = (0, jotai.atom)((get) => get(internalPerfMetricsAtom));
178
+ const hasReportedPerformanceMetricsAtom = (0, jotai.atom)(false);
179
+ /**
180
+ * Logs a performance metric by capturing the delta between the initial app start time
181
+ * and the current time. If the metric has already been logged, it will not be logged again.
182
+ *
183
+ * @param value The performance metric name to log.
184
+ */
185
+ const logPerfMetricAtom = (0, jotai.atom)(null, (get, set, value) => {
186
+ const initialTimeStorageValue = get(appInitialStartTimeMsAtom);
187
+ const initialTimeMs = initialTimeStorageValue ? parseInt(initialTimeStorageValue, 10) : void 0;
188
+ if (initialTimeMs == null) {
189
+ require_api.logger_default.logWarn(`[spiffy-ai] No initial app start time found. Skipping...`, void 0);
190
+ return;
191
+ }
192
+ const currentPerfMetrics = get(internalPerfMetricsAtom);
193
+ if (currentPerfMetrics.has(value)) return;
194
+ const deltaMs = Date.now() - initialTimeMs;
195
+ currentPerfMetrics.set(value, deltaMs);
196
+ set(internalPerfMetricsAtom, currentPerfMetrics);
197
+ });
198
+
199
+ //#endregion
200
+ //#region src/atoms/chat/form.ts
201
+ const handleFormSubmittedAtom = (0, jotai.atom)(null, (_, set, form) => {
202
+ set(replyEventCategoryAtom, __spiffy_ai_commerce_api_client.UserEventCategory.FormSubmitted);
203
+ set(formSubmitAtom, form);
204
+ const formUserEvent = {
205
+ eventId: (0, uuid.v4)(),
206
+ category: __spiffy_ai_commerce_api_client.UserEventCategory.FormSubmitted,
207
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
208
+ attributes: form
209
+ };
210
+ set(queueUserEventAtom, formUserEvent);
211
+ });
212
+
213
+ //#endregion
214
+ //#region src/atoms/chat/suggestions.ts
215
+ const handleSuggestionAtom = (0, jotai.atom)(null, (get, set, suggestion) => {
216
+ const newMessage = {
217
+ id: suggestion.id,
218
+ role: require_models.MessageRole.User,
219
+ type: require_models.MessageType.SuggestionClicked,
220
+ createdAt: (/* @__PURE__ */ new Date()).toISOString(),
221
+ metadata: {
222
+ suggestionId: suggestion.id,
223
+ suggestionContent: suggestion.content
224
+ }
225
+ };
226
+ set(replyEventCategoryAtom, __spiffy_ai_commerce_api_client.UserEventCategory.SuggestionClicked);
227
+ set(suggestionAtom, suggestion);
228
+ set(messagesAtom, [...get(messagesAtom), [newMessage]]);
229
+ set(userHasRepliedAtom, true);
230
+ set(queueUserEventAtom, {
231
+ eventId: suggestion.id,
232
+ category: __spiffy_ai_commerce_api_client.UserEventCategory.SuggestionClicked,
233
+ createdAt: newMessage.createdAt,
234
+ attributes: { suggestionId: suggestion.id }
235
+ });
236
+ });
237
+
238
+ //#endregion
239
+ //#region src/atoms/chat/lastMessage.ts
240
+ const lastAssistantMessageAtom = (0, jotai.atom)((get) => {
241
+ const messages = get(messagesAtom);
242
+ const userHasReplied = get(userHasRepliedAtom);
243
+ if (messages.length > 0 && !userHasReplied) return messages[messages.length - 1];
244
+ return null;
245
+ });
246
+
247
+ //#endregion
248
+ //#region src/atoms/chat/renderedWidgetRefs.ts
249
+ const internalWidgetArrayAtom = (0, jotai.atom)([]);
250
+ const widgetArrayAtom = (0, jotai.atom)((get) => get(internalWidgetArrayAtom));
251
+ /**
252
+ * This function call is used to create a list of the Spiffy widgets
253
+ * that are rendering on the page.
254
+ *
255
+ * It is used by the FloatingButton widget to slide out of view when it
256
+ * overlaps with another Spiffy widget.
257
+ *
258
+ * The spiffy widgets should be added to the this array for the floating button
259
+ * to know about them.
260
+ *
261
+ * Today the "SuggestionBar" widget is not added, but the other widgets are.
262
+ *
263
+ */
264
+ const addWidget = (ref, idx) => {
265
+ const atomStore = require_atomStore.getAtomStore();
266
+ const val = atomStore.get(internalWidgetArrayAtom);
267
+ const insertIdx = idx ?? val.length;
268
+ val[insertIdx] = ref;
269
+ atomStore.set(internalWidgetArrayAtom, val);
270
+ };
271
+
272
+ //#endregion
273
+ //#region src/atoms/chat/index.ts
274
+ const chatAtom = (0, jotai.atom)((get) => ({
275
+ userHasReplied: get(userHasRepliedAtom),
276
+ replyEventCategory: get(replyEventCategoryAtom),
277
+ userQuery: get(userQueryAtom),
278
+ suggestion: get(suggestionAtom),
279
+ askQuestionBtnClicked: get(askQuestionBtnClickedAtom),
280
+ messages: get(messagesAtom),
281
+ userEvents: get(userEventsAtom),
282
+ suggestions: get(suggestionsAtom),
283
+ suggestionsLoading: get(suggestionsLoadingAtom),
284
+ responseStreaming: get(responseStreamingAtom),
285
+ isOpen: get(chatIsOpenAtom),
286
+ onToggle: get(chatOnToggleAtom)
287
+ }));
288
+
289
+ //#endregion
290
+ Object.defineProperty(exports, 'APP_INITIAL_START_TIME_KEY', {
291
+ enumerable: true,
292
+ get: function () {
293
+ return APP_INITIAL_START_TIME_KEY;
294
+ }
295
+ });
296
+ Object.defineProperty(exports, 'PAGE_LOAD_OFFSET_TIME_KEY', {
297
+ enumerable: true,
298
+ get: function () {
299
+ return PAGE_LOAD_OFFSET_TIME_KEY;
300
+ }
301
+ });
302
+ Object.defineProperty(exports, 'PerfMetricsEvents', {
303
+ enumerable: true,
304
+ get: function () {
305
+ return PerfMetricsEvents;
306
+ }
307
+ });
308
+ Object.defineProperty(exports, 'addWidget', {
309
+ enumerable: true,
310
+ get: function () {
311
+ return addWidget;
312
+ }
313
+ });
314
+ Object.defineProperty(exports, 'appInitialStartTimeMsAtom', {
315
+ enumerable: true,
316
+ get: function () {
317
+ return appInitialStartTimeMsAtom;
318
+ }
319
+ });
320
+ Object.defineProperty(exports, 'askQuestionBtnClickedAtom', {
321
+ enumerable: true,
322
+ get: function () {
323
+ return askQuestionBtnClickedAtom;
324
+ }
325
+ });
326
+ Object.defineProperty(exports, 'chatAtom', {
327
+ enumerable: true,
328
+ get: function () {
329
+ return chatAtom;
330
+ }
331
+ });
332
+ Object.defineProperty(exports, 'chatIsOpenAtom', {
333
+ enumerable: true,
334
+ get: function () {
335
+ return chatIsOpenAtom;
336
+ }
337
+ });
338
+ Object.defineProperty(exports, 'chatOnToggleAtom', {
339
+ enumerable: true,
340
+ get: function () {
341
+ return chatOnToggleAtom;
342
+ }
343
+ });
344
+ Object.defineProperty(exports, 'clearUserEventAtom', {
345
+ enumerable: true,
346
+ get: function () {
347
+ return clearUserEventAtom;
348
+ }
349
+ });
350
+ Object.defineProperty(exports, 'createResponsePayload', {
351
+ enumerable: true,
352
+ get: function () {
353
+ return createResponsePayload;
354
+ }
355
+ });
356
+ Object.defineProperty(exports, 'formSubmitAtom', {
357
+ enumerable: true,
358
+ get: function () {
359
+ return formSubmitAtom;
360
+ }
361
+ });
362
+ Object.defineProperty(exports, 'handleFormSubmittedAtom', {
363
+ enumerable: true,
364
+ get: function () {
365
+ return handleFormSubmittedAtom;
366
+ }
367
+ });
368
+ Object.defineProperty(exports, 'handleReplyAtom', {
369
+ enumerable: true,
370
+ get: function () {
371
+ return handleReplyAtom;
372
+ }
373
+ });
374
+ Object.defineProperty(exports, 'handleSuggestionAtom', {
375
+ enumerable: true,
376
+ get: function () {
377
+ return handleSuggestionAtom;
378
+ }
379
+ });
380
+ Object.defineProperty(exports, 'hasReportedPerformanceMetricsAtom', {
381
+ enumerable: true,
382
+ get: function () {
383
+ return hasReportedPerformanceMetricsAtom;
384
+ }
385
+ });
386
+ Object.defineProperty(exports, 'lastAssistantMessageAtom', {
387
+ enumerable: true,
388
+ get: function () {
389
+ return lastAssistantMessageAtom;
390
+ }
391
+ });
392
+ Object.defineProperty(exports, 'logPerfMetricAtom', {
393
+ enumerable: true,
394
+ get: function () {
395
+ return logPerfMetricAtom;
396
+ }
397
+ });
398
+ Object.defineProperty(exports, 'messagesAtom', {
399
+ enumerable: true,
400
+ get: function () {
401
+ return messagesAtom;
402
+ }
403
+ });
404
+ Object.defineProperty(exports, 'pageLoadOffsetTimeAtom', {
405
+ enumerable: true,
406
+ get: function () {
407
+ return pageLoadOffsetTimeAtom;
408
+ }
409
+ });
410
+ Object.defineProperty(exports, 'performanceMetricsAtom', {
411
+ enumerable: true,
412
+ get: function () {
413
+ return performanceMetricsAtom;
414
+ }
415
+ });
416
+ Object.defineProperty(exports, 'processUserEventAtom', {
417
+ enumerable: true,
418
+ get: function () {
419
+ return processUserEventAtom;
420
+ }
421
+ });
422
+ Object.defineProperty(exports, 'queueUserEventAtom', {
423
+ enumerable: true,
424
+ get: function () {
425
+ return queueUserEventAtom;
426
+ }
427
+ });
428
+ Object.defineProperty(exports, 'replyEventCategoryAtom', {
429
+ enumerable: true,
430
+ get: function () {
431
+ return replyEventCategoryAtom;
432
+ }
433
+ });
434
+ Object.defineProperty(exports, 'requestFailureAtom', {
435
+ enumerable: true,
436
+ get: function () {
437
+ return requestFailureAtom;
438
+ }
439
+ });
440
+ Object.defineProperty(exports, 'resetPerformanceMetricsAtom', {
441
+ enumerable: true,
442
+ get: function () {
443
+ return resetPerformanceMetricsAtom;
444
+ }
445
+ });
446
+ Object.defineProperty(exports, 'responseStreamingAtom', {
447
+ enumerable: true,
448
+ get: function () {
449
+ return responseStreamingAtom;
450
+ }
451
+ });
452
+ Object.defineProperty(exports, 'suggestionAtom', {
453
+ enumerable: true,
454
+ get: function () {
455
+ return suggestionAtom;
456
+ }
457
+ });
458
+ Object.defineProperty(exports, 'suggestionsAtom', {
459
+ enumerable: true,
460
+ get: function () {
461
+ return suggestionsAtom;
462
+ }
463
+ });
464
+ Object.defineProperty(exports, 'suggestionsLoadingAtom', {
465
+ enumerable: true,
466
+ get: function () {
467
+ return suggestionsLoadingAtom;
468
+ }
469
+ });
470
+ Object.defineProperty(exports, 'userEventQueueAtom', {
471
+ enumerable: true,
472
+ get: function () {
473
+ return userEventQueueAtom;
474
+ }
475
+ });
476
+ Object.defineProperty(exports, 'userEventsAtom', {
477
+ enumerable: true,
478
+ get: function () {
479
+ return userEventsAtom;
480
+ }
481
+ });
482
+ Object.defineProperty(exports, 'userHasRepliedAtom', {
483
+ enumerable: true,
484
+ get: function () {
485
+ return userHasRepliedAtom;
486
+ }
487
+ });
488
+ Object.defineProperty(exports, 'userQueryAtom', {
489
+ enumerable: true,
490
+ get: function () {
491
+ return userQueryAtom;
492
+ }
493
+ });
494
+ Object.defineProperty(exports, 'userQueueEventCountAtom', {
495
+ enumerable: true,
496
+ get: function () {
497
+ return userQueueEventCountAtom;
498
+ }
499
+ });
500
+ Object.defineProperty(exports, 'widgetArrayAtom', {
501
+ enumerable: true,
502
+ get: function () {
503
+ return widgetArrayAtom;
504
+ }
505
+ });
506
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1DTzdjUmthcS5janMiLCJuYW1lcyI6WyJVc2VyRXZlbnRDYXRlZ29yeSIsIlNwaWZmeUV2ZW50TmFtZSIsIlNwaWZmeU1ldHJpY3NFdmVudE5hbWUiLCJnZXRBdG9tU3RvcmUiLCJvcmdTaG9ydE5hbWVBdG9tIiwib3JnSWRBdG9tIiwidXNlcklkQXRvbSIsImNoYXRJZEF0b20iLCJjb250ZXh0U291cmNlQXRvbSIsImVudkF0b20iLCJmZWF0dXJlRmxhZ1NlcnZpY2VBdG9tIiwiQ29udGV4dFNvdXJjZUVudW0iLCJDb250ZXh0RW52RW51bSIsIk1lc3NhZ2VUeXBlIiwiVXNlckV2ZW50Q2F0ZWdvcnkiLCJTcGlmZnlNZXRyaWNzRXZlbnROYW1lIiwic2Vzc2lvblN0b3JhZ2VVdGlsIiwiZ2V0QXRvbVN0b3JlIiwiVXNlckV2ZW50Q2F0ZWdvcnkiLCJuZXdNZXNzYWdlOiBNZXNzYWdlIiwiTWVzc2FnZVJvbGUiLCJNZXNzYWdlVHlwZSIsIlVzZXJFdmVudENhdGVnb3J5IiwiZ2V0QXRvbVN0b3JlIl0sInNvdXJjZXMiOlsiLi4vc3JjL2F0b21zL2NoYXQvY2hhdFN0YXRlLnRzIiwiLi4vc3JjL2F0b21zL2NoYXQvbWVzc2FnZVF1ZXVlLnRzIiwiLi4vc3JjL2F0b21zL2FtcGxpdHVkZS9hbXBsaXR1ZGVUcmFja0V2ZW50QXRvbS50cyIsIi4uL3NyYy9hdG9tcy9jaGF0L3JlcGxpZXMudHMiLCIuLi9zcmMvYXRvbXMvY2hhdC9wZXJmb3JtYW5jZU1ldHJpY3MudHMiLCIuLi9zcmMvYXRvbXMvY2hhdC9mb3JtLnRzIiwiLi4vc3JjL2F0b21zL2NoYXQvc3VnZ2VzdGlvbnMudHMiLCIuLi9zcmMvYXRvbXMvY2hhdC9sYXN0TWVzc2FnZS50cyIsIi4uL3NyYy9hdG9tcy9jaGF0L3JlbmRlcmVkV2lkZ2V0UmVmcy50cyIsIi4uL3NyYy9hdG9tcy9jaGF0L2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVzZXJFdmVudENhdGVnb3J5IH0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudC9kaXN0L21vZGVscy9Vc2VyRXZlbnRDYXRlZ29yeVwiO1xuaW1wb3J0IHsgYXRvbSB9IGZyb20gXCJqb3RhaVwiO1xuaW1wb3J0IHsgU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB9IGZyb20gXCJzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dFwiO1xuaW1wb3J0IHtcbiAgRm9ybVN1Ym1pdHRlZEF0dHJpYnV0ZXMsXG4gIE1lc3NhZ2UsXG4gIFN1Z2dlc3Rpb24sXG4gIFVzZXJFdmVudCxcbn0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHNcIjtcbmltcG9ydCB7IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHMvY2hhdEVsZW1lbnREaXNwbGF5TG9jYXRpb25cIjtcbmltcG9ydCB7IFNwaWZmeUV2ZW50TmFtZSB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzL2V2ZW50c1wiO1xuXG5leHBvcnQgY29uc3QgdXNlckhhc1JlcGxpZWRBdG9tID0gYXRvbTxib29sZWFuPihmYWxzZSk7XG5leHBvcnQgY29uc3QgcmVwbHlFdmVudENhdGVnb3J5QXRvbSA9IGF0b208VXNlckV2ZW50Q2F0ZWdvcnk+KFxuICBVc2VyRXZlbnRDYXRlZ29yeS5BcHBMb2FkZWRcbik7XG5leHBvcnQgY29uc3QgdXNlclF1ZXJ5QXRvbSA9IGF0b208c3RyaW5nPigpO1xuZXhwb3J0IGNvbnN0IHN1Z2dlc3Rpb25BdG9tID0gYXRvbTxTdWdnZXN0aW9uIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuZXhwb3J0IGNvbnN0IGFza1F1ZXN0aW9uQnRuQ2xpY2tlZEF0b20gPSBhdG9tPGJvb2xlYW4+KGZhbHNlKTtcbmV4cG9ydCBjb25zdCBtZXNzYWdlc0F0b20gPSBhdG9tPE1lc3NhZ2VbXVtdPihbXSk7XG5leHBvcnQgY29uc3QgdXNlckV2ZW50c0F0b20gPSBhdG9tPFVzZXJFdmVudFtdPihbXSk7XG5leHBvcnQgY29uc3Qgc3VnZ2VzdGlvbnNBdG9tID0gYXRvbTxTdWdnZXN0aW9uW10+KFtdKTtcbmV4cG9ydCBjb25zdCBzdWdnZXN0aW9uc0xvYWRpbmdBdG9tID0gYXRvbTxib29sZWFuPihmYWxzZSk7XG5leHBvcnQgY29uc3QgcmVzcG9uc2VTdHJlYW1pbmdBdG9tID0gYXRvbTxib29sZWFuPihmYWxzZSk7XG5leHBvcnQgY29uc3QgY2hhdElzT3BlbkF0b20gPSBhdG9tPGJvb2xlYW4+KGZhbHNlKTtcbmV4cG9ydCBjb25zdCByZXF1ZXN0RmFpbHVyZUF0b20gPSBhdG9tPGJvb2xlYW4+KGZhbHNlKTtcbmV4cG9ydCBjb25zdCBmb3JtU3VibWl0QXRvbSA9IGF0b208Rm9ybVN1Ym1pdHRlZEF0dHJpYnV0ZXM+KCk7XG5leHBvcnQgY29uc3QgY2hhdE9uVG9nZ2xlQXRvbSA9IGF0b20oXG4gIG51bGwsXG4gIChcbiAgICBnZXQsXG4gICAgc2V0LFxuICAgIHRyaWdnZXJMb2NhdGlvbj86IENoYXRFbGVtZW50RGlzcGxheUxvY2F0aW9uLFxuICAgIHRyYWNrPzogKFxuICAgICAgZXZlbnROYW1lOiBTcGlmZnlNZXRyaWNzRXZlbnROYW1lLFxuICAgICAgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgKSA9PiB2b2lkXG4gICkgPT4ge1xuICAgIGNvbnN0IGlzT3BlbiA9IGdldChjaGF0SXNPcGVuQXRvbSk7XG4gICAgc2V0KGNoYXRJc09wZW5BdG9tLCAhaXNPcGVuKTtcblxuICAgIGlmICghaXNPcGVuKSB7XG4gICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoU3BpZmZ5RXZlbnROYW1lLldpZGdldE9wZW4pKTtcbiAgICAgIHRyYWNrPy4oU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0Q29tcG9uZW50RXhwYW5kZWQsIHtcbiAgICAgICAgbWVzc2FnZV9tZXRhZGF0YToge1xuICAgICAgICAgIHRyaWdnZXJfbG9jYXRpb246IHRyaWdnZXJMb2NhdGlvbixcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB3aW5kb3cuZGlzcGF0Y2hFdmVudChuZXcgQ3VzdG9tRXZlbnQoU3BpZmZ5RXZlbnROYW1lLldpZGdldENsb3NlKSk7XG4gICAgICB0cmFjaz8uKFNwaWZmeU1ldHJpY3NFdmVudE5hbWUuQ2hhdENvbXBvbmVudENvbGxhcHNlZCk7XG4gICAgfVxuICB9XG4pO1xuIiwiaW1wb3J0IHsgYXRvbSB9IGZyb20gXCJqb3RhaVwiO1xuaW1wb3J0IHsgdjQgYXMgdXVpZCB9IGZyb20gXCJ1dWlkXCI7XG5pbXBvcnQge1xuICBHZW5lcmF0aW9uUGFyYW1zLFxuICBOZXh0TWVzc2FnZVJlcXVlc3QsXG4gIFVzZXJFdmVudCxcbn0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHNcIjtcbmltcG9ydCB7IGdldEF0b21TdG9yZSB9IGZyb20gXCJzcmMvYXRvbXMvYXRvbVN0b3JlL2F0b21TdG9yZVwiO1xuaW1wb3J0IHsgdXNlcklkQXRvbSwgY2hhdElkQXRvbSB9IGZyb20gXCJzcmMvYXRvbXMvYXBwXCI7XG5pbXBvcnQge1xuICBvcmdTaG9ydE5hbWVBdG9tLFxuICBjb250ZXh0U291cmNlQXRvbSxcbiAgZW52QXRvbSxcbn0gZnJvbSBcInNyYy9hdG9tcy9lbnZpdmUvZW52aXZlQ29uZmlnXCI7XG5pbXBvcnQgeyBvcmdJZEF0b20sIGZlYXR1cmVGbGFnU2VydmljZUF0b20gfSBmcm9tIFwic3JjL2F0b21zL29yZy9ncmFwaHFsQ29uZmlnXCI7XG5cbmNvbnN0IGludGVybmFsVXNlckV2ZW50UXVldWVBdG9tID0gYXRvbTxVc2VyRXZlbnRbXT4oW10pO1xuXG5leHBvcnQgY29uc3QgdXNlckV2ZW50UXVldWVBdG9tID0gYXRvbSgoZ2V0KSA9PiB7XG4gIGNvbnN0IHF1ZXVlID0gZ2V0KGludGVybmFsVXNlckV2ZW50UXVldWVBdG9tKTtcbiAgcmV0dXJuIHF1ZXVlID09PSB1bmRlZmluZWQgPyBbXSA6IHF1ZXVlLmZpbHRlcigodikgPT4gdiAhPT0gdW5kZWZpbmVkKTtcbn0pO1xuXG4vKipcbiAqIFRoaXMgYXRvbSBpcyB1c2VkIHRvIHF1ZXVlIGEgbmV3IG1lc3NhZ2UgZm9yIHByb2Nlc3Npbmcgb24gYG5leHRfcmVzcG9uc2VzYFxuICogSXQgcmVjZWl2ZXMgYSBzaW5nbGUgYHVzZXJFdmVudGAgdGhhdCBpcyBhZGRlZCB0byB0aGUgcHJvY2Vzc2luZyBxdWV1ZS5cbiAqIElmIHRoZSBldmVudCBoYXMgdGhlIHNhbWUgZXZlbnRJZCBhcyBhbiBleGlzdGluZyBtZXNzYWdlIGluIHRoZSBxdWV1ZSB0aGUgTkVXXG4gKiBldmVudCBpcyBpZ25vcmVkXG4gKi9cbmV4cG9ydCBjb25zdCBxdWV1ZVVzZXJFdmVudEF0b20gPSBhdG9tKFxuICBudWxsLFxuICAoZ2V0LCBzZXQsIHVzZXJFdmVudDogVXNlckV2ZW50KSA9PiB7XG4gICAgaWYgKHVzZXJFdmVudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHNldChpbnRlcm5hbFVzZXJFdmVudFF1ZXVlQXRvbSwgW1xuICAgICAgLi4uZ2V0KGludGVybmFsVXNlckV2ZW50UXVldWVBdG9tKSxcbiAgICAgIHVzZXJFdmVudCxcbiAgICBdKTtcbiAgfVxuKTtcblxuLyoqXG4gKiBUaGlzIGF0b20gZXhwb3NlcyBhIGZ1bmN0aW9uIHRvIHJlc2V0IHRoZSBlbnRpcmUgcXVldWUuIEFsbCBtZXNzYWdlcyBpbiB0aGUgcXVldWUgd2lsbCBiZSBwdXJnZWRcbiAqL1xuZXhwb3J0IGNvbnN0IGNsZWFyVXNlckV2ZW50QXRvbSA9IGF0b20obnVsbCwgKF8sIHNldCkgPT4ge1xuICBzZXQoaW50ZXJuYWxVc2VyRXZlbnRRdWV1ZUF0b20sIFtdKTtcbn0pO1xuXG4vKipcbiAqIFRoaXMgYXRvbSBpcyB1c2VkIHRvIG1hcmsgZXZlbnRzIGFzIHByb2Nlc3NlZCBhbmQgcmVtb3ZlIHRoZW0gZnJvbSB0aGUgcXVldWVcbiAqIEl0IGFjY2VwdHMgYSBsaXN0IG9mIGV2ZW50SWQgdmFsdWVzIGFuZCB3aWxsIHJlbW92ZSBhbGwgZXZlbnRzIHdpdGggdGhvc2UgZXZlbnRJZHMgZnJvbSB0aGUgcXVldWUuXG4gKi9cbmV4cG9ydCBjb25zdCBwcm9jZXNzVXNlckV2ZW50QXRvbSA9IGF0b20oXG4gIG51bGwsXG4gIChnZXQsIHNldCwgZXZlbnRJZHM6IHN0cmluZ1tdKSA9PiB7XG4gICAgY29uc3QgY3VyciA9IGdldChpbnRlcm5hbFVzZXJFdmVudFF1ZXVlQXRvbSk7XG4gICAgY29uc3QgcmVtYWluaW5nID0gY3Vycj8uZmlsdGVyKFxuICAgICAgKGV2ZW50KSA9PiAhZXZlbnRJZHMuaW5jbHVkZXMoZXZlbnQuZXZlbnRJZClcbiAgICApO1xuICAgIHNldChpbnRlcm5hbFVzZXJFdmVudFF1ZXVlQXRvbSwgcmVtYWluaW5nKTtcbiAgfVxuKTtcblxuZXhwb3J0IGNvbnN0IHVzZXJRdWV1ZUV2ZW50Q291bnRBdG9tID0gYXRvbShcbiAgKGdldCkgPT4gZ2V0KHVzZXJFdmVudFF1ZXVlQXRvbSkubGVuZ3RoXG4pO1xuXG5pbXBvcnQge1xuICBDb250ZXh0U291cmNlRW51bSxcbiAgQ29udGV4dEVudkVudW0sXG59IGZyb20gXCJAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnRcIjsgLy8gSW1wb3J0IG5lY2Vzc2FyeSBlbnVtc1xuLy8gaW1wb3J0IHR5cGUgeyBDb250ZXh0IH0gZnJvbSBcIkBzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudC9kaXN0L21vZGVscy9Db250ZXh0XCI7IC8vIEltcG9ydCBDb250ZXh0IHR5cGVcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZVJlc3BvbnNlUGF5bG9hZCA9ICh7XG4gIHVzZXJFdmVudHMsXG4gIGdlbmVyYXRpb25QYXJhbXMsXG59OiB7XG4gIHVzZXJFdmVudHM6IFVzZXJFdmVudFtdO1xuICBnZW5lcmF0aW9uUGFyYW1zPzogR2VuZXJhdGlvblBhcmFtcztcbn0pOiBOZXh0TWVzc2FnZVJlcXVlc3QgPT4ge1xuICBjb25zdCBhdG9tU3RvcmUgPSBnZXRBdG9tU3RvcmUoKTtcbiAgY29uc3Qgb3JnU2hvcnROYW1lID0gYXRvbVN0b3JlLmdldChvcmdTaG9ydE5hbWVBdG9tKTtcbiAgY29uc3Qgb3JnSWQgPSBhdG9tU3RvcmUuZ2V0KG9yZ0lkQXRvbSk7XG4gIGNvbnN0IHVzZXJJZCA9IGF0b21TdG9yZS5nZXQodXNlcklkQXRvbSk7XG4gIGNvbnN0IGNoYXRJZCA9IGF0b21TdG9yZS5nZXQoY2hhdElkQXRvbSk7XG4gIGNvbnN0IHNvdXJjZSA9IGF0b21TdG9yZS5nZXQoY29udGV4dFNvdXJjZUF0b20pO1xuICBjb25zdCBlbnYgPSBhdG9tU3RvcmUuZ2V0KGVudkF0b20pO1xuXG4gIGNvbnN0IGZlYXR1cmVGbGFnU2VydmljZSA9IGF0b21TdG9yZS5nZXQoZmVhdHVyZUZsYWdTZXJ2aWNlQXRvbSk7XG5cbiAgY29uc3QgY29udGV4dCA9IHtcbiAgICB1c2VySWQ6IHVzZXJJZCA/PyBcIlwiLFxuICAgIG9yZ19pZDogb3JnSWQgPz8gXCJcIixcbiAgICBvcmdfc2hvcnRfbmFtZTogb3JnU2hvcnROYW1lID8/IFwiXCIsXG4gICAgY2hhdF9pZDogY2hhdElkID8/IFwiXCIsXG4gICAgc291cmNlOiBzb3VyY2UgPz8gQ29udGV4dFNvdXJjZUVudW0uQXBwLFxuICAgIGVudjogKGVudiBhcyBDb250ZXh0RW52RW51bSkgPz8gQ29udGV4dEVudkVudW0uRGV2LFxuICB9O1xuXG4gIGNvbnN0IGZlYXR1cmVGbGFncyA9XG4gICAgZmVhdHVyZUZsYWdTZXJ2aWNlPy5mZWF0dXJlRmxhZ1NlcnZpY2U/LmdldEZlYXR1cmVGbGFncygpIHx8IHt9O1xuXG4gIHJldHVybiB7XG4gICAgaWQ6IHV1aWQoKSxcbiAgICBjb250ZXh0LFxuICAgIHVzZXJFdmVudHMsXG4gICAgZmVhdHVyZUZsYWdzOiBPYmplY3QuZnJvbUVudHJpZXMoXG4gICAgICBPYmplY3QuZW50cmllcyhmZWF0dXJlRmxhZ3MpLmZpbHRlcigoWywgaXNFbmFibGVkXSkgPT4gaXNFbmFibGVkKVxuICAgICksIC8vIENvbnZlcnQgYmFjayB0byBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPlxuICAgIGdlbmVyYXRpb25QYXJhbXMsXG4gIH07XG59O1xuIiwiaW1wb3J0IHsgYXRvbSB9IGZyb20gXCJqb3RhaVwiO1xuaW1wb3J0IHsgU3BpZmZ5TWV0cmljc0V2ZW50TmFtZSB9IGZyb20gXCJzcmMvY29udGV4dHMvYW1wbGl0dWRlQ29udGV4dFwiO1xuXG5pbnRlcmZhY2UgVHJhY2tFdmVudFBhcmFtcyB7XG4gIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZTtcbiAgZXZlbnRQcm9wcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBldmVudEdyb3Vwcz86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICBhbHNvU2VuZFRvR29vZ2xlQW5hbHl0aWNzPzogYm9vbGVhbjtcbn1cblxuLy8gVGhpcyBhdG9tIHdpbGwgaG9sZCB0aGUgdHJhY2tFdmVudCBmdW5jdGlvbiBmcm9tIHRoZSBBbXBsaXR1ZGUgY29udGV4dC5cbi8vIEl0IG5lZWRzIHRvIGJlIGluaXRpYWxpemVkIGJ5IGEgUmVhY3QgY29tcG9uZW50IHRoYXQgaGFzIGFjY2VzcyB0byB0aGUgdXNlQW1wbGl0dWRlIGhvb2suXG5leHBvcnQgY29uc3QgYW1wbGl0dWRlVHJhY2tFdmVudEF0b20gPSBhdG9tPFxuICAoKHBhcmFtczogVHJhY2tFdmVudFBhcmFtcykgPT4gUHJvbWlzZTx2b2lkPikgfCBudWxsXG4+KG51bGwpO1xuIiwiaW1wb3J0IHsgYXRvbSB9IGZyb20gXCJqb3RhaVwiO1xuaW1wb3J0IHsgTWVzc2FnZSwgTWVzc2FnZVR5cGUgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL21vZGVsc1wiO1xuaW1wb3J0IHtcbiAgdXNlckhhc1JlcGxpZWRBdG9tLFxuICBtZXNzYWdlc0F0b20sXG4gIHVzZXJRdWVyeUF0b20sXG4gIHJlcGx5RXZlbnRDYXRlZ29yeUF0b20sXG59IGZyb20gXCJzcmMvYXRvbXMvY2hhdFwiO1xuaW1wb3J0IHsgVXNlckV2ZW50Q2F0ZWdvcnkgfSBmcm9tIFwiQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50XCI7XG5pbXBvcnQgeyBxdWV1ZVVzZXJFdmVudEF0b20gfSBmcm9tIFwiLi9tZXNzYWdlUXVldWVcIjtcbmltcG9ydCB7IFNwaWZmeU1ldHJpY3NFdmVudE5hbWUgfSBmcm9tIFwic3JjL2NvbnRleHRzL2FtcGxpdHVkZUNvbnRleHRcIjtcbmltcG9ydCB7IGFtcGxpdHVkZVRyYWNrRXZlbnRBdG9tIH0gZnJvbSBcInNyYy9hdG9tcy9hbXBsaXR1ZGUvYW1wbGl0dWRlVHJhY2tFdmVudEF0b21cIjtcblxudHlwZSBIYW5kbGVSZXBseVBhcmFtcyA9IHtcbiAgbWVzc2FnZTogTWVzc2FnZTtcbiAgdXNlclR5cGVkOiBib29sZWFuO1xufTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZVJlcGx5QXRvbSA9IGF0b20oXG4gIG51bGwsXG4gIChnZXQsIHNldCwgeyBtZXNzYWdlLCB1c2VyVHlwZWQgfTogSGFuZGxlUmVwbHlQYXJhbXMpID0+IHtcbiAgICBpZiAobWVzc2FnZS50eXBlICE9PSBNZXNzYWdlVHlwZS5RdWVyeVR5cGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgdHJhY2tFdmVudCA9IGdldChhbXBsaXR1ZGVUcmFja0V2ZW50QXRvbSk7XG4gICAgY29uc3QgcXVlcnlUeXBlZCA9IG1lc3NhZ2UubWV0YWRhdGEuY29udGVudDtcblxuICAgIHNldChyZXBseUV2ZW50Q2F0ZWdvcnlBdG9tLCBVc2VyRXZlbnRDYXRlZ29yeS5RdWVyeVR5cGVkKTtcbiAgICBzZXQodXNlclF1ZXJ5QXRvbSwgcXVlcnlUeXBlZCk7XG4gICAgc2V0KG1lc3NhZ2VzQXRvbSwgWy4uLmdldChtZXNzYWdlc0F0b20pLCBbbWVzc2FnZV1dKTtcbiAgICBzZXQodXNlckhhc1JlcGxpZWRBdG9tLCB0cnVlKTtcbiAgICBzZXQocXVldWVVc2VyRXZlbnRBdG9tLCB7XG4gICAgICBldmVudElkOiBtZXNzYWdlLmlkLFxuICAgICAgY3JlYXRlZEF0OiBtZXNzYWdlLmNyZWF0ZWRBdCxcbiAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5RdWVyeVR5cGVkLFxuICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICBxdWVyeTogcXVlcnlUeXBlZCxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBpZiAodHJhY2tFdmVudCkge1xuICAgICAgdHJhY2tFdmVudCh7XG4gICAgICAgIGV2ZW50TmFtZTogU3BpZmZ5TWV0cmljc0V2ZW50TmFtZS5DaGF0VXNlck1lc3NhZ2VJbnB1dCxcbiAgICAgICAgZXZlbnRQcm9wczoge1xuICAgICAgICAgIG1lc3NhZ2VfaWQ6IG1lc3NhZ2UuaWQsXG4gICAgICAgICAgbWVzc2FnZV9yb2xlOiBtZXNzYWdlLnJvbGUsXG4gICAgICAgICAgbWVzc2FnZV90eXBlOiBtZXNzYWdlLnR5cGUsXG4gICAgICAgICAgbWVzc2FnZV9tZXRhZGF0YToge1xuICAgICAgICAgICAgY29udGVudDogbWVzc2FnZT8ubWV0YWRhdGE/LmNvbnRlbnQsIC8vIFJlbW92ZWQgYW1wbGl0dWRlU2FmZVN0cmluZ1xuICAgICAgICAgICAgY3JlYXRlZF9hdDogbWVzc2FnZS5jcmVhdGVkQXQsXG4gICAgICAgICAgICB1c2VyX3R5cGVkOiB1c2VyVHlwZWQsXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgYWxzb1NlbmRUb0dvb2dsZUFuYWx5dGljczogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuKTtcbiIsImltcG9ydCB7IGF0b20gfSBmcm9tIFwiam90YWlcIjtcbmltcG9ydCB7IGF0b21XaXRoU3RvcmFnZSB9IGZyb20gXCJqb3RhaS91dGlsc1wiO1xuaW1wb3J0IExvZ2dlciBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyXCI7XG5pbXBvcnQge1xuICBnZXRBdG9tU3RvcmUsXG4gIHNlc3Npb25TdG9yYWdlVXRpbCxcbn0gZnJvbSBcInNyYy9hdG9tcy9hdG9tU3RvcmUvYXRvbVN0b3JlXCI7XG5cbmV4cG9ydCBjb25zdCBBUFBfSU5JVElBTF9TVEFSVF9USU1FX0tFWSA9IFwic3BpZmZ5LWFwcC1pbml0aWFsLXN0YXJ0LXRpbWVcIjtcbmV4cG9ydCBjb25zdCBQQUdFX0xPQURfT0ZGU0VUX1RJTUVfS0VZID0gXCJzcGlmZnktcGFnZS1sb2FkLW9mZnNldC10aW1lXCI7XG4vKipcbiAqIFRoZSBkaWZmZXJlbnQgcGVyZm9ybWFuY2UgbWV0cmljcyB0aGF0IGNhbiBiZSBsb2dnZWQuIEFsbCB0aW1lcyBhcmUgcmVsYXRpdmUgdG8gdGhlXG4gKiBpbml0aWFsIHN0YXJ0IHRpbWUgb2YgdGhlIGFwcCBhbmQgYXJlIHN0b3JlZCBpbiBtaWxsaXNlY29uZHMuXG4gKi9cbmV4cG9ydCBlbnVtIFBlcmZNZXRyaWNzRXZlbnRzIHtcbiAgUGFnZUxvYWRPZmZzZXQgPSBcInBhZ2VfbG9hZF9vZmZzZXRfbXNcIixcbiAgTWFpbkJ1bmRsZUxvYWRlZCA9IFwibWFpbl9idW5kbGVfbG9hZGVkX21zXCIsXG4gIE9yZ0NvbmZpZ0xvYWRTdGFydGVkID0gXCJvcmdfY29uZmlnX2xvYWRfc3RhcnRlZF9tc1wiLFxuICBPcmdDb25maWdMb2FkRW5kZWQgPSBcIm9yZ19jb25maWdfbG9hZF9lbmRlZF9tc1wiLFxuICBGaXJzdFJlc3BvbnNlU3RhcnRlZCA9IFwiZmlyc3RfcmVzcG9uc2Vfc3RhcnRlZF9tc1wiLFxuICBGaXJzdFJlc3BvbnNlQ29tcGxldGVkID0gXCJmaXJzdF9yZXNwb25zZV9jb21wbGV0ZWRfbXNcIixcbiAgRmlyc3RTdWdnZXN0aW9uc1N0YXJ0ZWQgPSBcImZpcnN0X3N1Z2dlc3Rpb25zX3N0YXJ0ZWRfbXNcIixcbiAgRmlyc3RTdWdnZXN0aW9uc0NvbXBsZXRlZCA9IFwiZmlyc3Rfc3VnZ2VzdGlvbnNfY29tcGxldGVkX21zXCIsXG4gIEVtYmVkZGVkV2lkZ2V0UmVuZGVyZWQgPSBcImVtYmVkZGVkX3dpZGdldF9yZW5kZXJlZF9tc1wiLFxuICBGbG9hdGluZ0J1dHRvblJlbmRlcmVkID0gXCJmbG9hdGluZ19idXR0b25fcmVuZGVyZWRfbXNcIixcbiAgVG9wU3VnZ2VzdGlvbnNCYXJSZW5kZXJlZCA9IFwidG9wX3N1Z2dlc3Rpb25zX2Jhcl9yZW5kZXJlZF9tc1wiLFxuICBCb3R0b21TdWdnZXN0aW9uc0JhclJlbmRlcmVkID0gXCJib3R0b21fc3VnZ2VzdGlvbnNfYmFyX3JlbmRlcmVkX21zXCIsXG4gIFNlYXJjaFByb21wdFJlbmRlcmVkID0gXCJzZWFyY2hfcHJvbXB0X3JlbmRlcmVkX21zXCIsXG59XG5cbmNvbnN0IGludGVybmFsUGVyZk1ldHJpY3NBdG9tID0gYXRvbTxNYXA8UGVyZk1ldHJpY3NFdmVudHMsIG51bWJlcj4+KG5ldyBNYXAoKSk7XG5leHBvcnQgY29uc3QgYXBwSW5pdGlhbFN0YXJ0VGltZU1zQXRvbSA9IGF0b21XaXRoU3RvcmFnZTxzdHJpbmcgfCB1bmRlZmluZWQ+KFxuICBBUFBfSU5JVElBTF9TVEFSVF9USU1FX0tFWSxcbiAgc2Vzc2lvblN0b3JhZ2UuZ2V0SXRlbShBUFBfSU5JVElBTF9TVEFSVF9USU1FX0tFWSkgPz8gdW5kZWZpbmVkLFxuICBzZXNzaW9uU3RvcmFnZVV0aWwsXG4gIHtcbiAgICBnZXRPbkluaXQ6IHRydWUsXG4gIH1cbik7XG5cbmV4cG9ydCBjb25zdCBwYWdlTG9hZE9mZnNldFRpbWVBdG9tID0gYXRvbVdpdGhTdG9yYWdlPHN0cmluZyB8IHVuZGVmaW5lZD4oXG4gIFBBR0VfTE9BRF9PRkZTRVRfVElNRV9LRVksXG4gIHNlc3Npb25TdG9yYWdlLmdldEl0ZW0oUEFHRV9MT0FEX09GRlNFVF9USU1FX0tFWSkgPz8gdW5kZWZpbmVkLFxuICBzZXNzaW9uU3RvcmFnZVV0aWwsXG4gIHtcbiAgICBnZXRPbkluaXQ6IHRydWUsXG4gIH1cbik7XG5cbi8qKlxuICogUmVzZXRzIHRoZSBwZXJmb3JtYW5jZSBtZXRyaWNzIGF0b20gdG8gYW4gZW1wdHkgbWFwLiBUaGlzIHNob3VsZCBiZSBjYWxsZWQgYWZ0ZXIgdGhlIHBlcmZvcm1hbmNlXG4gKiBtZXRyaWNzIGhhdmUgYmVlbiByZXBvcnRlZCB0byBhbXBsaXR1ZGUuIE9uIFNQQSwgaXQgZW5zdXJlcyB0aGF0IHdlIGNhbiBzdGlsbCBjYXB0dXJlIG1ldHJpY3MgYXNcbiAqIHRoZSB1c2VyIG5hdmlnYXRlcyBhcm91bmQgdGhlIGFwcCAoYWx0aG91Z2ggdGhlcmUgaXMgbW9yZSB3b3JrIHRvIGJlIGRvbmUgdG8gZnVsbHkgZW5hYmxlIHRoaXMpLlxuICogT24gbm9uLVNQQSwgaXQgZW5zdXJlcyB0aGF0IHByZXZpb3VzbHkgY2FwdHVyZWQgbWV0cmljcyBhcmUgbm90IHJlcG9ydGVkIGFnYWluLlxuICovXG5leHBvcnQgY29uc3QgcmVzZXRQZXJmb3JtYW5jZU1ldHJpY3NBdG9tID0gKCkgPT4ge1xuICBjb25zdCBhdG9tU3RvcmUgPSBnZXRBdG9tU3RvcmUoKTtcbiAgYXRvbVN0b3JlLnNldChpbnRlcm5hbFBlcmZNZXRyaWNzQXRvbSwgbmV3IE1hcCgpKTtcbn07XG5leHBvcnQgY29uc3QgcGVyZm9ybWFuY2VNZXRyaWNzQXRvbSA9IGF0b20oKGdldCkgPT5cbiAgZ2V0KGludGVybmFsUGVyZk1ldHJpY3NBdG9tKVxuKTtcbmV4cG9ydCBjb25zdCBoYXNSZXBvcnRlZFBlcmZvcm1hbmNlTWV0cmljc0F0b20gPSBhdG9tPGJvb2xlYW4+KGZhbHNlKTtcblxuLyoqXG4gKiBMb2dzIGEgcGVyZm9ybWFuY2UgbWV0cmljIGJ5IGNhcHR1cmluZyB0aGUgZGVsdGEgYmV0d2VlbiB0aGUgaW5pdGlhbCBhcHAgc3RhcnQgdGltZVxuICogYW5kIHRoZSBjdXJyZW50IHRpbWUuIElmIHRoZSBtZXRyaWMgaGFzIGFscmVhZHkgYmVlbiBsb2dnZWQsIGl0IHdpbGwgbm90IGJlIGxvZ2dlZCBhZ2Fpbi5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgVGhlIHBlcmZvcm1hbmNlIG1ldHJpYyBuYW1lIHRvIGxvZy5cbiAqL1xuZXhwb3J0IGNvbnN0IGxvZ1BlcmZNZXRyaWNBdG9tID0gYXRvbShcbiAgbnVsbCxcbiAgKGdldCwgc2V0LCB2YWx1ZTogUGVyZk1ldHJpY3NFdmVudHMpID0+IHtcbiAgICBjb25zdCBpbml0aWFsVGltZVN0b3JhZ2VWYWx1ZSA9IGdldChhcHBJbml0aWFsU3RhcnRUaW1lTXNBdG9tKTtcbiAgICBjb25zdCBpbml0aWFsVGltZU1zID0gaW5pdGlhbFRpbWVTdG9yYWdlVmFsdWVcbiAgICAgID8gcGFyc2VJbnQoaW5pdGlhbFRpbWVTdG9yYWdlVmFsdWUsIDEwKVxuICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICBpZiAoaW5pdGlhbFRpbWVNcyA9PSBudWxsKSB7XG4gICAgICBMb2dnZXIubG9nV2FybihcbiAgICAgICAgYFtzcGlmZnktYWldIE5vIGluaXRpYWwgYXBwIHN0YXJ0IHRpbWUgZm91bmQuIFNraXBwaW5nLi4uYCxcbiAgICAgICAgdW5kZWZpbmVkXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGN1cnJlbnRQZXJmTWV0cmljcyA9IGdldChpbnRlcm5hbFBlcmZNZXRyaWNzQXRvbSk7XG4gICAgaWYgKGN1cnJlbnRQZXJmTWV0cmljcy5oYXModmFsdWUpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgY3VycmVudFRpbWVNcyA9IERhdGUubm93KCk7XG4gICAgY29uc3QgZGVsdGFNcyA9IGN1cnJlbnRUaW1lTXMgLSBpbml0aWFsVGltZU1zO1xuICAgIGN1cnJlbnRQZXJmTWV0cmljcy5zZXQodmFsdWUsIGRlbHRhTXMpO1xuICAgIHNldChpbnRlcm5hbFBlcmZNZXRyaWNzQXRvbSwgY3VycmVudFBlcmZNZXRyaWNzKTtcbiAgfVxuKTtcbiIsImltcG9ydCB7IFVzZXJFdmVudENhdGVnb3J5IH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IGF0b20gfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBGb3JtU3VibWl0dGVkQXR0cmlidXRlcywgVXNlckV2ZW50IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBmb3JtU3VibWl0QXRvbSwgcmVwbHlFdmVudENhdGVnb3J5QXRvbSB9IGZyb20gJ3NyYy9hdG9tcy9jaGF0JztcbmltcG9ydCB7IHF1ZXVlVXNlckV2ZW50QXRvbSB9IGZyb20gJ3NyYy9hdG9tcy9jaGF0L21lc3NhZ2VRdWV1ZSc7XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVGb3JtU3VibWl0dGVkQXRvbSA9IGF0b20obnVsbCwgKF8sIHNldCwgZm9ybTogRm9ybVN1Ym1pdHRlZEF0dHJpYnV0ZXMpID0+IHtcbiAgc2V0KHJlcGx5RXZlbnRDYXRlZ29yeUF0b20sIFVzZXJFdmVudENhdGVnb3J5LkZvcm1TdWJtaXR0ZWQpO1xuICBzZXQoZm9ybVN1Ym1pdEF0b20sIGZvcm0pO1xuXG4gIGNvbnN0IGZvcm1Vc2VyRXZlbnQgPSB7XG4gICAgZXZlbnRJZDogdXVpZCgpLFxuICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5Gb3JtU3VibWl0dGVkLFxuICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgIGF0dHJpYnV0ZXM6IGZvcm0sXG4gIH0gc2F0aXNmaWVzIFVzZXJFdmVudDtcbiAgc2V0KHF1ZXVlVXNlckV2ZW50QXRvbSwgZm9ybVVzZXJFdmVudCk7XG59KTtcbiIsImltcG9ydCB7IGF0b20gfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBNZXNzYWdlLCBNZXNzYWdlUm9sZSwgTWVzc2FnZVR5cGUsIFN1Z2dlc3Rpb24gfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7XG4gIG1lc3NhZ2VzQXRvbSxcbiAgcmVwbHlFdmVudENhdGVnb3J5QXRvbSxcbiAgc3VnZ2VzdGlvbkF0b20sXG4gIHVzZXJIYXNSZXBsaWVkQXRvbSxcbn0gZnJvbSAnc3JjL2F0b21zL2NoYXQnO1xuaW1wb3J0IHsgVXNlckV2ZW50Q2F0ZWdvcnkgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgcXVldWVVc2VyRXZlbnRBdG9tIH0gZnJvbSAnLi9tZXNzYWdlUXVldWUnO1xuXG5leHBvcnQgY29uc3QgaGFuZGxlU3VnZ2VzdGlvbkF0b20gPSBhdG9tKG51bGwsIChnZXQsIHNldCwgc3VnZ2VzdGlvbjogU3VnZ2VzdGlvbikgPT4ge1xuICBjb25zdCBuZXdNZXNzYWdlOiBNZXNzYWdlID0ge1xuICAgIGlkOiBzdWdnZXN0aW9uLmlkLFxuICAgIHJvbGU6IE1lc3NhZ2VSb2xlLlVzZXIsXG4gICAgdHlwZTogTWVzc2FnZVR5cGUuU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgbWV0YWRhdGE6IHtcbiAgICAgIHN1Z2dlc3Rpb25JZDogc3VnZ2VzdGlvbi5pZCxcbiAgICAgIHN1Z2dlc3Rpb25Db250ZW50OiBzdWdnZXN0aW9uLmNvbnRlbnQsXG4gICAgfSxcbiAgfTtcblxuICBzZXQocmVwbHlFdmVudENhdGVnb3J5QXRvbSwgVXNlckV2ZW50Q2F0ZWdvcnkuU3VnZ2VzdGlvbkNsaWNrZWQpO1xuICBzZXQoc3VnZ2VzdGlvbkF0b20sIHN1Z2dlc3Rpb24pO1xuICBzZXQobWVzc2FnZXNBdG9tLCBbLi4uZ2V0KG1lc3NhZ2VzQXRvbSksIFtuZXdNZXNzYWdlXV0pO1xuICBzZXQodXNlckhhc1JlcGxpZWRBdG9tLCB0cnVlKTtcbiAgc2V0KHF1ZXVlVXNlckV2ZW50QXRvbSwge1xuICAgIGV2ZW50SWQ6IHN1Z2dlc3Rpb24uaWQsXG4gICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlN1Z2dlc3Rpb25DbGlja2VkLFxuICAgIGNyZWF0ZWRBdDogbmV3TWVzc2FnZS5jcmVhdGVkQXQsXG4gICAgYXR0cmlidXRlczoge1xuICAgICAgc3VnZ2VzdGlvbklkOiBzdWdnZXN0aW9uLmlkLFxuICAgIH0sXG4gIH0pO1xufSk7XG4iLCJpbXBvcnQgeyBhdG9tIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgbWVzc2FnZXNBdG9tLCB1c2VySGFzUmVwbGllZEF0b20gfSBmcm9tICdzcmMvYXRvbXMvY2hhdCc7XG5cbmV4cG9ydCBjb25zdCBsYXN0QXNzaXN0YW50TWVzc2FnZUF0b20gPSBhdG9tKChnZXQpID0+IHtcbiAgY29uc3QgbWVzc2FnZXMgPSBnZXQobWVzc2FnZXNBdG9tKTtcbiAgY29uc3QgdXNlckhhc1JlcGxpZWQgPSBnZXQodXNlckhhc1JlcGxpZWRBdG9tKTtcbiAgaWYgKG1lc3NhZ2VzLmxlbmd0aCA+IDAgJiYgIXVzZXJIYXNSZXBsaWVkKSB7XG4gICAgcmV0dXJuIG1lc3NhZ2VzW21lc3NhZ2VzLmxlbmd0aCAtIDFdO1xuICB9XG4gIHJldHVybiBudWxsO1xufSk7XG4iLCJpbXBvcnQgeyBhdG9tIH0gZnJvbSBcImpvdGFpXCI7XG5pbXBvcnQgeyBnZXRBdG9tU3RvcmUgfSBmcm9tIFwic3JjL2F0b21zL2F0b21TdG9yZS9hdG9tU3RvcmVcIjtcblxuY29uc3QgaW50ZXJuYWxXaWRnZXRBcnJheUF0b20gPSBhdG9tPEhUTUxFbGVtZW50W10+KFtdKTtcblxuZXhwb3J0IGNvbnN0IHdpZGdldEFycmF5QXRvbSA9IGF0b20oKGdldCkgPT4gZ2V0KGludGVybmFsV2lkZ2V0QXJyYXlBdG9tKSk7XG5cbi8qKlxuICogVGhpcyBmdW5jdGlvbiBjYWxsIGlzIHVzZWQgdG8gY3JlYXRlIGEgbGlzdCBvZiB0aGUgU3BpZmZ5IHdpZGdldHNcbiAqIHRoYXQgYXJlIHJlbmRlcmluZyBvbiB0aGUgcGFnZS5cbiAqXG4gKiBJdCBpcyB1c2VkIGJ5IHRoZSBGbG9hdGluZ0J1dHRvbiB3aWRnZXQgdG8gc2xpZGUgb3V0IG9mIHZpZXcgd2hlbiBpdFxuICogb3ZlcmxhcHMgd2l0aCBhbm90aGVyIFNwaWZmeSB3aWRnZXQuXG4gKlxuICogVGhlIHNwaWZmeSB3aWRnZXRzIHNob3VsZCBiZSBhZGRlZCB0byB0aGUgdGhpcyBhcnJheSBmb3IgdGhlIGZsb2F0aW5nIGJ1dHRvblxuICogdG8ga25vdyBhYm91dCB0aGVtLlxuICpcbiAqIFRvZGF5IHRoZSBcIlN1Z2dlc3Rpb25CYXJcIiB3aWRnZXQgaXMgbm90IGFkZGVkLCBidXQgdGhlIG90aGVyIHdpZGdldHMgYXJlLlxuICpcbiAqL1xuZXhwb3J0IGNvbnN0IGFkZFdpZGdldCA9IChyZWY6IEhUTUxFbGVtZW50LCBpZHg/OiBudW1iZXIpID0+IHtcbiAgY29uc3QgYXRvbVN0b3JlID0gZ2V0QXRvbVN0b3JlKCk7XG4gIGNvbnN0IHZhbCA9IGF0b21TdG9yZS5nZXQoaW50ZXJuYWxXaWRnZXRBcnJheUF0b20pO1xuICBjb25zdCBpbnNlcnRJZHggPSBpZHggPz8gdmFsLmxlbmd0aDtcbiAgdmFsW2luc2VydElkeF0gPSByZWY7XG4gIGF0b21TdG9yZS5zZXQoaW50ZXJuYWxXaWRnZXRBcnJheUF0b20sIHZhbCk7XG59O1xuIiwiaW1wb3J0IHsgYXRvbSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCB7XG4gIHJlc3BvbnNlU3RyZWFtaW5nQXRvbSxcbiAgc3VnZ2VzdGlvbnNMb2FkaW5nQXRvbSxcbiAgbWVzc2FnZXNBdG9tLFxuICB1c2VyUXVlcnlBdG9tLFxuICByZXBseUV2ZW50Q2F0ZWdvcnlBdG9tLFxuICB1c2VySGFzUmVwbGllZEF0b20sXG4gIGFza1F1ZXN0aW9uQnRuQ2xpY2tlZEF0b20sXG4gIHN1Z2dlc3Rpb25zQXRvbSxcbiAgY2hhdElzT3BlbkF0b20sXG4gIGNoYXRPblRvZ2dsZUF0b20sXG4gIHVzZXJFdmVudHNBdG9tLFxuICBzdWdnZXN0aW9uQXRvbSxcbn0gZnJvbSAnLi9jaGF0U3RhdGUnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NoYXRTdGF0ZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlcGxpZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJmb3JtYW5jZU1ldHJpY3MnO1xuZXhwb3J0ICogZnJvbSAnLi9mb3JtJztcbmV4cG9ydCAqIGZyb20gJy4vc3VnZ2VzdGlvbnMnO1xuZXhwb3J0ICogZnJvbSAnLi9sYXN0TWVzc2FnZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlcmVkV2lkZ2V0UmVmcyc7XG5cbmV4cG9ydCBjb25zdCBjaGF0QXRvbSA9IGF0b20oKGdldCkgPT4gKHtcbiAgdXNlckhhc1JlcGxpZWQ6IGdldCh1c2VySGFzUmVwbGllZEF0b20pLFxuICByZXBseUV2ZW50Q2F0ZWdvcnk6IGdldChyZXBseUV2ZW50Q2F0ZWdvcnlBdG9tKSxcbiAgdXNlclF1ZXJ5OiBnZXQodXNlclF1ZXJ5QXRvbSksXG4gIHN1Z2dlc3Rpb246IGdldChzdWdnZXN0aW9uQXRvbSksXG4gIGFza1F1ZXN0aW9uQnRuQ2xpY2tlZDogZ2V0KGFza1F1ZXN0aW9uQnRuQ2xpY2tlZEF0b20pLFxuICBtZXNzYWdlczogZ2V0KG1lc3NhZ2VzQXRvbSksXG4gIHVzZXJFdmVudHM6IGdldCh1c2VyRXZlbnRzQXRvbSksXG4gIHN1Z2dlc3Rpb25zOiBnZXQoc3VnZ2VzdGlvbnNBdG9tKSxcbiAgc3VnZ2VzdGlvbnNMb2FkaW5nOiBnZXQoc3VnZ2VzdGlvbnNMb2FkaW5nQXRvbSksXG4gIHJlc3BvbnNlU3RyZWFtaW5nOiBnZXQocmVzcG9uc2VTdHJlYW1pbmdBdG9tKSxcbiAgaXNPcGVuOiBnZXQoY2hhdElzT3BlbkF0b20pLFxuICBvblRvZ2dsZTogZ2V0KGNoYXRPblRvZ2dsZUF0b20pLFxufSkpO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLE1BQWEscUNBQW1DLE1BQU07QUFDdEQsTUFBYSx5Q0FDWEEsZ0ZBQWtCLFVBQ25CO0FBQ0QsTUFBYSxpQ0FBOEI7QUFDM0MsTUFBYSxpQ0FBOEMsT0FBVTtBQUNyRSxNQUFhLDRDQUEwQyxNQUFNO0FBQzdELE1BQWEsK0JBQWlDLEVBQUUsQ0FBQztBQUNqRCxNQUFhLGlDQUFtQyxFQUFFLENBQUM7QUFDbkQsTUFBYSxr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
@@ -23,4 +23,4 @@ const ANIMATED_MESSAGES_TESTID = "spiffy-animated-messages";
23
23
 
24
24
  //#endregion
25
25
  export { ANIMATED_MESSAGES_TESTID, CHAT_CONTAINER_ID, CHAT_HEADER_CLOSE_BUTTON_TESTID, CHAT_HEADER_CONTAINER_TESTID, CHAT_MESSAGE_CONTAINER_TESTID, CHAT_MESSAGE_DIVIDER_TESTID, CHAT_MODAL_TESTID, CHAT_REPLY_INPUT_SEND_BUTTON_TESTID, CHAT_REPLY_INPUT_TESTID, CHAT_VIEW_PREVIOUS_MESSAGES_TESTID, DYNAMIC_CAROUSEL_TESTID, IMAGE_STACK_FIRST_IMAGE_TESTID, IMAGE_STACK_SECOND_IMAGE_TESTID, IMAGE_STACK_TESTID, LOADING_MESSAGE_CONTAINER_TESTID, MOBILE_CHAT_HEADER_TESTID, SCROLLABLE_SUGGESTIONS_TESTID, SUGGESTION_BAR_BUTTON_TESTID, SUGGESTION_BAR_TESTID, SUGGESTION_BUTTON_TESTID, TAG_TESTID };
26
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1DSG1ENzlFMS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnL2xvY2F0b3JzL2NvbXBvbmVudHMvY2hhdC9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUZXN0IGlkcyBmb3IgY29tcG9uZW50cyByZW5kZXJlZCBpbnNpZGUgdGhlIGNoYXQgbW9kYWwsIGFuZCB0aGUgY2hhdCBtb2RhbFxuZXhwb3J0IGNvbnN0IENIQVRfQ09OVEFJTkVSX0lEID0gJyNzcGlmZnktbW9kYWwtY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBDSEFUX0hFQURFUl9DT05UQUlORVJfVEVTVElEID0gJ3NwaWZmeS1jaGF0LWhlYWRlci1jb250YWluZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfSEVBREVSX0NMT1NFX0JVVFRPTl9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtaGVhZGVyLWNsb3NlLWJ1dHRvbic7XG5leHBvcnQgY29uc3QgQ0hBVF9NRVNTQUdFX0NPTlRBSU5FUl9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtbWVzc2FnZS1jb250YWluZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfTUVTU0FHRV9ESVZJREVSX1RFU1RJRCA9ICdzcGlmZnktY2hhdC1tZXNzYWdlLWRpdmlkZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfTU9EQUxfVEVTVElEID0gJ3NwaWZmeS1tb2RhbC1zaGFkb3ctZG9tLWNvbnRhaW5lcic7XG5leHBvcnQgY29uc3QgQ0hBVF9SRVBMWV9JTlBVVF9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtcmVwbHktaW5wdXQnO1xuZXhwb3J0IGNvbnN0IENIQVRfUkVQTFlfSU5QVVRfU0VORF9CVVRUT05fVEVTVElEID0gJ3NwaWZmeS1jaGF0LXJlcGx5LWlucHV0LXNlbmQtYnV0dG9uJztcbmV4cG9ydCBjb25zdCBDSEFUX1ZJRVdfUFJFVklPVVNfTUVTU0FHRVNfVEVTVElEID0gJ3NwaWZmeS1jaGF0LXZpZXctcHJldmlvdXMtbWVzc2FnZXMnO1xuZXhwb3J0IGNvbnN0IERZTkFNSUNfQ0FST1VTRUxfVEVTVElEID0gJ2R5bmFtaWMtY2Fyb3VzZWwnO1xuZXhwb3J0IGNvbnN0IElNQUdFX1NUQUNLX1RFU1RJRCA9ICdzcGlmZnktcHJvZHVjdC1jb21wYXJpc29uLWltYWdlLXN0YWNrJztcbmV4cG9ydCBjb25zdCBJTUFHRV9TVEFDS19GSVJTVF9JTUFHRV9URVNUSUQgPSAnc3BpZmZ5LXByb2R1Y3QtY29tcGFyaXNvbi1pbWFnZS1zdGFjay1maXJzdC1pbWFnZSc7XG5leHBvcnQgY29uc3QgSU1BR0VfU1RBQ0tfU0VDT05EX0lNQUdFX1RFU1RJRCA9ICdzcGlmZnktcHJvZHVjdC1jb21wYXJpc29uLWltYWdlLXN0YWNrLXNlY29uZC1pbWFnZSc7XG5leHBvcnQgY29uc3QgTE9BRElOR19NRVNTQUdFX0NPTlRBSU5FUl9URVNUSUQgPSAnc3BpZmZ5LW1lc3NhZ2VzLWxvYWRpbmctY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBNT0JJTEVfQ0hBVF9IRUFERVJfVEVTVElEID0gJ3NwaWZmeS1tb2JpbGUtY2hhdC1oZWFkZXInO1xuZXhwb3J0IGNvbnN0IFNDUk9MTEFCTEVfU1VHR0VTVElPTlNfVEVTVElEID0gJ3NwaWZmeS1zY3JvbGxhYmxlLXN1Z2dlc3Rpb25zJztcbmV4cG9ydCBjb25zdCBTVUdHRVNUSU9OX0JBUl9URVNUSUQgPSAnc3BpZmZ5LXN1Z2dlc3Rpb24tYmFyJztcbmV4cG9ydCBjb25zdCBTVUdHRVNUSU9OX0JBUl9CVVRUT05fVEVTVElEID0gJ3NwaWZmeS1zdWdnZXN0aW9uLWJhci1idXR0b24nO1xuZXhwb3J0IGNvbnN0IFNVR0dFU1RJT05fQlVUVE9OX1RFU1RJRCA9ICdzcGlmZnktc3VnZ2VzdGlvbi1idXR0b24nO1xuXG5leHBvcnQgY29uc3QgVEFHX1RFU1RJRCA9ICdzcGlmZnktdGFnJztcbmV4cG9ydCBjb25zdCBBTklNQVRFRF9NRVNTQUdFU19URVNUSUQgPSAnc3BpZmZ5LWFuaW1hdGVkLW1lc3NhZ2VzJztcbiJdLCJtYXBwaW5ncyI6IjtBQUNBLE1BQWEsb0JBQW9CO0FBQ2pDLE1BQWEsK0JBQStCO0FBQzVDLE1BQWEsa0NBQWtDO0FBQy9DLE1BQWEsZ0NBQWdDO0FBQzdDLE1BQWEsOEJBQThCO0FBQzNDLE1BQWEsb0JBQW9CO0FBQ2pDLE1BQWEsMEJBQTBCO0FBQ3ZDLE1BQWEsc0NBQXNDO0FBQ25ELE1BQWEscUNBQXFDO0FBQ2xELE1BQWEsMEJBQTBCO0FBQ3ZDLE1BQWEscUJBQXFCO0FBQ2xDLE1BQWEsaUNBQWlDO0FBQzlDLE1BQWEsa0NBQWtDO0FBQy9DLE1BQWEsbUNBQW1DO0FBQ2hELE1BQWEsNEJBQTRCO0FBQ3pDLE1BQWEsZ0NBQWdDO0FBQzdDLE1BQWEsd0JBQXdCO0FBQ3JDLE1BQWEsK0JBQStCO0FBQzVDLE1BQWEsMkJBQTJCO0FBRXhDLE1BQWEsYUFBYTtBQUMxQixNQUFhLDJCQUEyQiJ9
26
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdC1DVjZNWGVJRC5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvY29uZmlnL2xvY2F0b3JzL2NvbXBvbmVudHMvY2hhdC9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUZXN0IGlkcyBmb3IgY29tcG9uZW50cyByZW5kZXJlZCBpbnNpZGUgdGhlIGNoYXQgbW9kYWwsIGFuZCB0aGUgY2hhdCBtb2RhbFxuZXhwb3J0IGNvbnN0IENIQVRfQ09OVEFJTkVSX0lEID0gJyNzcGlmZnktbW9kYWwtY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBDSEFUX0hFQURFUl9DT05UQUlORVJfVEVTVElEID0gJ3NwaWZmeS1jaGF0LWhlYWRlci1jb250YWluZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfSEVBREVSX0NMT1NFX0JVVFRPTl9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtaGVhZGVyLWNsb3NlLWJ1dHRvbic7XG5leHBvcnQgY29uc3QgQ0hBVF9NRVNTQUdFX0NPTlRBSU5FUl9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtbWVzc2FnZS1jb250YWluZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfTUVTU0FHRV9ESVZJREVSX1RFU1RJRCA9ICdzcGlmZnktY2hhdC1tZXNzYWdlLWRpdmlkZXInO1xuZXhwb3J0IGNvbnN0IENIQVRfTU9EQUxfVEVTVElEID0gJ3NwaWZmeS1tb2RhbC1zaGFkb3ctZG9tLWNvbnRhaW5lcic7XG5leHBvcnQgY29uc3QgQ0hBVF9SRVBMWV9JTlBVVF9URVNUSUQgPSAnc3BpZmZ5LWNoYXQtcmVwbHktaW5wdXQnO1xuZXhwb3J0IGNvbnN0IENIQVRfUkVQTFlfSU5QVVRfU0VORF9CVVRUT05fVEVTVElEID0gJ3NwaWZmeS1jaGF0LXJlcGx5LWlucHV0LXNlbmQtYnV0dG9uJztcbmV4cG9ydCBjb25zdCBDSEFUX1ZJRVdfUFJFVklPVVNfTUVTU0FHRVNfVEVTVElEID0gJ3NwaWZmeS1jaGF0LXZpZXctcHJldmlvdXMtbWVzc2FnZXMnO1xuZXhwb3J0IGNvbnN0IERZTkFNSUNfQ0FST1VTRUxfVEVTVElEID0gJ2R5bmFtaWMtY2Fyb3VzZWwnO1xuZXhwb3J0IGNvbnN0IElNQUdFX1NUQUNLX1RFU1RJRCA9ICdzcGlmZnktcHJvZHVjdC1jb21wYXJpc29uLWltYWdlLXN0YWNrJztcbmV4cG9ydCBjb25zdCBJTUFHRV9TVEFDS19GSVJTVF9JTUFHRV9URVNUSUQgPSAnc3BpZmZ5LXByb2R1Y3QtY29tcGFyaXNvbi1pbWFnZS1zdGFjay1maXJzdC1pbWFnZSc7XG5leHBvcnQgY29uc3QgSU1BR0VfU1RBQ0tfU0VDT05EX0lNQUdFX1RFU1RJRCA9ICdzcGlmZnktcHJvZHVjdC1jb21wYXJpc29uLWltYWdlLXN0YWNrLXNlY29uZC1pbWFnZSc7XG5leHBvcnQgY29uc3QgTE9BRElOR19NRVNTQUdFX0NPTlRBSU5FUl9URVNUSUQgPSAnc3BpZmZ5LW1lc3NhZ2VzLWxvYWRpbmctY29udGFpbmVyJztcbmV4cG9ydCBjb25zdCBNT0JJTEVfQ0hBVF9IRUFERVJfVEVTVElEID0gJ3NwaWZmeS1tb2JpbGUtY2hhdC1oZWFkZXInO1xuZXhwb3J0IGNvbnN0IFNDUk9MTEFCTEVfU1VHR0VTVElPTlNfVEVTVElEID0gJ3NwaWZmeS1zY3JvbGxhYmxlLXN1Z2dlc3Rpb25zJztcbmV4cG9ydCBjb25zdCBTVUdHRVNUSU9OX0JBUl9URVNUSUQgPSAnc3BpZmZ5LXN1Z2dlc3Rpb24tYmFyJztcbmV4cG9ydCBjb25zdCBTVUdHRVNUSU9OX0JBUl9CVVRUT05fVEVTVElEID0gJ3NwaWZmeS1zdWdnZXN0aW9uLWJhci1idXR0b24nO1xuZXhwb3J0IGNvbnN0IFNVR0dFU1RJT05fQlVUVE9OX1RFU1RJRCA9ICdzcGlmZnktc3VnZ2VzdGlvbi1idXR0b24nO1xuXG5leHBvcnQgY29uc3QgVEFHX1RFU1RJRCA9ICdzcGlmZnktdGFnJztcbmV4cG9ydCBjb25zdCBBTklNQVRFRF9NRVNTQUdFU19URVNUSUQgPSAnc3BpZmZ5LWFuaW1hdGVkLW1lc3NhZ2VzJztcbiJdLCJtYXBwaW5ncyI6IjtBQUNBLE1BQWEsb0JBQW9CO0FBQ2pDLE1BQWEsK0JBQStCO0FBQzVDLE1BQWEsa0NBQWtDO0FBQy9DLE1BQWEsZ0NBQWdDO0FBQzdDLE1BQWEsOEJBQThCO0FBQzNDLE1BQWEsb0JBQW9CO0FBQ2pDLE1BQWEsMEJBQTBCO0FBQ3ZDLE1BQWEsc0NBQXNDO0FBQ25ELE1BQWEscUNBQXFDO0FBQ2xELE1BQWEsMEJBQTBCO0FBQ3ZDLE1BQWEscUJBQXFCO0FBQ2xDLE1BQWEsaUNBQWlDO0FBQzlDLE1BQWEsa0NBQWtDO0FBQy9DLE1BQWEsbUNBQW1DO0FBQ2hELE1BQWEsNEJBQTRCO0FBQ3pDLE1BQWEsZ0NBQWdDO0FBQzdDLE1BQWEsd0JBQXdCO0FBQ3JDLE1BQWEsK0JBQStCO0FBQzVDLE1BQWEsMkJBQTJCO0FBRXhDLE1BQWEsYUFBYTtBQUMxQixNQUFhLDJCQUEyQiJ9