@envive-ai/react-hooks 0.1.9 → 0.2.1

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 (442) hide show
  1. package/package.json +1 -1
  2. package/dist/AmplitudeOperations-CNyxbBY6.cjs +0 -0
  3. package/dist/AmplitudeOperations-Oa2efWtF.js +0 -1
  4. package/dist/NewOrgConfig-B1zC4zP0.js +0 -10
  5. package/dist/NewOrgConfig-DAGaGj2d.cjs +0 -15
  6. package/dist/SystemSettingsContext-BHi2YaQp.cjs +0 -20
  7. package/dist/SystemSettingsContext-BLRfTbCC.js +0 -13
  8. package/dist/TrackComponentVisibleEvent-CftWp8QR.js +0 -52
  9. package/dist/TrackComponentVisibleEvent-Dag8vFhb.cjs +0 -59
  10. package/dist/amplitudeContext-B73xamNe.d.cts +0 -52
  11. package/dist/amplitudeContext-BhhYPJSL.d.ts +0 -52
  12. package/dist/amplitudeContext-CwPtBPhg.js +0 -287
  13. package/dist/amplitudeContext-DTC6maR0.cjs +0 -309
  14. package/dist/api-Bc3_julZ.cjs +0 -239
  15. package/dist/api-D9gmGNAV.js +0 -166
  16. package/dist/app-CoQ1nC-j.js +0 -132
  17. package/dist/app-DN72spgQ.cjs +0 -178
  18. package/dist/application/models/graphql/index.cjs +0 -5
  19. package/dist/application/models/graphql/index.d.cts +0 -2
  20. package/dist/application/models/graphql/index.d.ts +0 -2
  21. package/dist/application/models/graphql/index.js +0 -4
  22. package/dist/application/models/guards/api/index.cjs +0 -16
  23. package/dist/application/models/guards/api/index.d.cts +0 -3
  24. package/dist/application/models/guards/api/index.d.ts +0 -3
  25. package/dist/application/models/guards/api/index.js +0 -5
  26. package/dist/application/models/guards/utils.cjs +0 -3
  27. package/dist/application/models/guards/utils.d.cts +0 -2
  28. package/dist/application/models/guards/utils.d.ts +0 -2
  29. package/dist/application/models/guards/utils.js +0 -3
  30. package/dist/application/models/index.cjs +0 -69
  31. package/dist/application/models/index.d.cts +0 -12
  32. package/dist/application/models/index.d.ts +0 -12
  33. package/dist/application/models/index.js +0 -12
  34. package/dist/application/models/utilityTypes/index.cjs +0 -1
  35. package/dist/application/models/utilityTypes/index.d.cts +0 -2
  36. package/dist/application/models/utilityTypes/index.d.ts +0 -2
  37. package/dist/application/models/utilityTypes/index.js +0 -3
  38. package/dist/application/models/variantInfo/index.cjs +0 -1
  39. package/dist/application/models/variantInfo/index.d.cts +0 -2
  40. package/dist/application/models/variantInfo/index.d.ts +0 -2
  41. package/dist/application/models/variantInfo/index.js +0 -3
  42. package/dist/application/utils/index.cjs +0 -48
  43. package/dist/application/utils/index.d.cts +0 -263
  44. package/dist/application/utils/index.d.ts +0 -263
  45. package/dist/application/utils/index.js +0 -22
  46. package/dist/atomStore-BS6qtYZF.js +0 -1
  47. package/dist/atomStore-BjRyLFEx.cjs +0 -0
  48. package/dist/atomStore-BuopbV9k.js +0 -32
  49. package/dist/atomStore-CZKe3itM.cjs +0 -58
  50. package/dist/atoms/app/index.cjs +0 -20
  51. package/dist/atoms/app/index.d.cts +0 -39
  52. package/dist/atoms/app/index.d.ts +0 -39
  53. package/dist/atoms/app/index.js +0 -16
  54. package/dist/atoms/atomStore/index.cjs +0 -7
  55. package/dist/atoms/atomStore/index.d.cts +0 -24
  56. package/dist/atoms/atomStore/index.d.ts +0 -24
  57. package/dist/atoms/atomStore/index.js +0 -4
  58. package/dist/atoms/chat/index.cjs +0 -52
  59. package/dist/atoms/chat/index.d.cts +0 -163
  60. package/dist/atoms/chat/index.d.ts +0 -163
  61. package/dist/atoms/chat/index.js +0 -23
  62. package/dist/atoms/globalSearch/index.cjs +0 -6
  63. package/dist/atoms/globalSearch/index.d.cts +0 -24
  64. package/dist/atoms/globalSearch/index.d.ts +0 -24
  65. package/dist/atoms/globalSearch/index.js +0 -3
  66. package/dist/atoms/org/index.cjs +0 -19
  67. package/dist/atoms/org/index.d.cts +0 -59
  68. package/dist/atoms/org/index.d.ts +0 -59
  69. package/dist/atoms/org/index.js +0 -6
  70. package/dist/atoms/search/index.cjs +0 -60
  71. package/dist/atoms/search/index.d.cts +0 -14
  72. package/dist/atoms/search/index.d.ts +0 -14
  73. package/dist/atoms/search/index.js +0 -30
  74. package/dist/atoms/search/types.cjs +0 -5
  75. package/dist/atoms/search/types.d.cts +0 -2
  76. package/dist/atoms/search/types.d.ts +0 -2
  77. package/dist/atoms/search/types.js +0 -3
  78. package/dist/atoms/search/utils.cjs +0 -3
  79. package/dist/atoms/search/utils.d.cts +0 -5
  80. package/dist/atoms/search/utils.d.ts +0 -5
  81. package/dist/atoms/search/utils.js +0 -3
  82. package/dist/cdnContext-ShKWLgKA.cjs +0 -53
  83. package/dist/cdnContext-pfrZ6lfu.js +0 -38
  84. package/dist/chat-BOuhPeoD.cjs +0 -394
  85. package/dist/chat-BkjIKhc5.cjs +0 -152
  86. package/dist/chat-C3I3GG1L.js +0 -258
  87. package/dist/chat-CgLypC3w.js +0 -26
  88. package/dist/chatElementDisplayLocation-BwiXrkN7.d.ts +0 -25
  89. package/dist/chatElementDisplayLocation-DWmfNX_u.d.cts +0 -25
  90. package/dist/chatSearch-B9Rk7Dl3.js +0 -295
  91. package/dist/chatSearch-BqVwk1ya.cjs +0 -418
  92. package/dist/chatState-CX50Roi9.js +0 -34
  93. package/dist/chatState-xC0pswtB.cjs +0 -120
  94. package/dist/chunk-CUT6urMc.cjs +0 -30
  95. package/dist/commerce-api-BCSZ4QFV.js +0 -311
  96. package/dist/commerce-api-DemPaNpu.cjs +0 -318
  97. package/dist/components-Cby-Cma3.cjs +0 -29
  98. package/dist/components-D1mg1-Br.js +0 -11
  99. package/dist/config/locators/components/chat/index.cjs +0 -23
  100. package/dist/config/locators/components/chat/index.d.cts +0 -2
  101. package/dist/config/locators/components/chat/index.d.ts +0 -2
  102. package/dist/config/locators/components/chat/index.js +0 -3
  103. package/dist/config/locators/components/chat/variants/index.cjs +0 -29
  104. package/dist/config/locators/components/chat/variants/index.d.cts +0 -16
  105. package/dist/config/locators/components/chat/variants/index.d.ts +0 -16
  106. package/dist/config/locators/components/chat/variants/index.js +0 -17
  107. package/dist/config/locators/components/index.cjs +0 -5
  108. package/dist/config/locators/components/index.d.cts +0 -2
  109. package/dist/config/locators/components/index.d.ts +0 -2
  110. package/dist/config/locators/components/index.js +0 -3
  111. package/dist/config/locators/components/search/index.cjs +0 -13
  112. package/dist/config/locators/components/search/index.d.cts +0 -8
  113. package/dist/config/locators/components/search/index.d.ts +0 -8
  114. package/dist/config/locators/components/search/index.js +0 -9
  115. package/dist/config/locators/index.cjs +0 -67
  116. package/dist/config/locators/index.d.cts +0 -25
  117. package/dist/config/locators/index.d.ts +0 -25
  118. package/dist/config/locators/index.js +0 -26
  119. package/dist/contexts/amplitudeContext/index.cjs +0 -22
  120. package/dist/contexts/amplitudeContext/index.d.cts +0 -2
  121. package/dist/contexts/amplitudeContext/index.d.ts +0 -2
  122. package/dist/contexts/amplitudeContext/index.js +0 -20
  123. package/dist/contexts/cdnContext/index.cjs +0 -7
  124. package/dist/contexts/cdnContext/index.d.cts +0 -15
  125. package/dist/contexts/cdnContext/index.d.ts +0 -15
  126. package/dist/contexts/cdnContext/index.js +0 -6
  127. package/dist/contexts/chatContext/index.cjs +0 -331
  128. package/dist/contexts/chatContext/index.d.cts +0 -15
  129. package/dist/contexts/chatContext/index.d.ts +0 -15
  130. package/dist/contexts/chatContext/index.js +0 -324
  131. package/dist/contexts/enviveConfigContext/index.cjs +0 -7
  132. package/dist/contexts/enviveConfigContext/index.d.cts +0 -30
  133. package/dist/contexts/enviveConfigContext/index.d.ts +0 -30
  134. package/dist/contexts/enviveConfigContext/index.js +0 -6
  135. package/dist/contexts/enviveCssContext/index.cjs +0 -66
  136. package/dist/contexts/enviveCssContext/index.d.cts +0 -10
  137. package/dist/contexts/enviveCssContext/index.d.ts +0 -10
  138. package/dist/contexts/enviveCssContext/index.js +0 -63
  139. package/dist/contexts/featureFlagContext/index.cjs +0 -107
  140. package/dist/contexts/featureFlagContext/index.d.cts +0 -20
  141. package/dist/contexts/featureFlagContext/index.d.ts +0 -20
  142. package/dist/contexts/featureFlagContext/index.js +0 -103
  143. package/dist/contexts/featureFlagServiceContext/index.cjs +0 -6
  144. package/dist/contexts/featureFlagServiceContext/index.d.cts +0 -5
  145. package/dist/contexts/featureFlagServiceContext/index.d.ts +0 -5
  146. package/dist/contexts/featureFlagServiceContext/index.js +0 -5
  147. package/dist/contexts/graphqlContext/index.cjs +0 -16
  148. package/dist/contexts/graphqlContext/index.d.cts +0 -14
  149. package/dist/contexts/graphqlContext/index.d.ts +0 -14
  150. package/dist/contexts/graphqlContext/index.js +0 -15
  151. package/dist/contexts/localStorageContext/index.cjs +0 -6
  152. package/dist/contexts/localStorageContext/index.d.cts +0 -30
  153. package/dist/contexts/localStorageContext/index.d.ts +0 -30
  154. package/dist/contexts/localStorageContext/index.js +0 -4
  155. package/dist/contexts/newOrgConfigContext/index.cjs +0 -20
  156. package/dist/contexts/newOrgConfigContext/index.d.cts +0 -15
  157. package/dist/contexts/newOrgConfigContext/index.d.ts +0 -15
  158. package/dist/contexts/newOrgConfigContext/index.js +0 -19
  159. package/dist/contexts/searchContext/index.cjs +0 -24
  160. package/dist/contexts/searchContext/index.d.cts +0 -16
  161. package/dist/contexts/searchContext/index.d.ts +0 -16
  162. package/dist/contexts/searchContext/index.js +0 -23
  163. package/dist/contexts/sessionStorageContext/index.cjs +0 -5
  164. package/dist/contexts/sessionStorageContext/index.d.cts +0 -15
  165. package/dist/contexts/sessionStorageContext/index.d.ts +0 -15
  166. package/dist/contexts/sessionStorageContext/index.js +0 -4
  167. package/dist/contexts/shopifyUrlContext/index.cjs +0 -5
  168. package/dist/contexts/shopifyUrlContext/index.d.cts +0 -20
  169. package/dist/contexts/shopifyUrlContext/index.d.ts +0 -20
  170. package/dist/contexts/shopifyUrlContext/index.js +0 -4
  171. package/dist/contexts/systemSettingsContext/index.cjs +0 -8
  172. package/dist/contexts/systemSettingsContext/index.d.cts +0 -37
  173. package/dist/contexts/systemSettingsContext/index.d.ts +0 -37
  174. package/dist/contexts/systemSettingsContext/index.js +0 -6
  175. package/dist/contexts/types.cjs +0 -7
  176. package/dist/contexts/types.d.cts +0 -4
  177. package/dist/contexts/types.d.ts +0 -4
  178. package/dist/contexts/types.js +0 -3
  179. package/dist/contexts/userIdentityContext/index.cjs +0 -27
  180. package/dist/contexts/userIdentityContext/index.d.cts +0 -2
  181. package/dist/contexts/userIdentityContext/index.d.ts +0 -2
  182. package/dist/contexts/userIdentityContext/index.js +0 -26
  183. package/dist/domObserver-B19-69gW.js +0 -285
  184. package/dist/domObserver-CwieVNgj.cjs +0 -304
  185. package/dist/enviveConfig-BSfyz_pm.js +0 -62
  186. package/dist/enviveConfig-D8vcVPWD.cjs +0 -130
  187. package/dist/enviveConfigContext-C8cCcdKU.cjs +0 -60
  188. package/dist/enviveConfigContext-CJqpRSKu.js +0 -45
  189. package/dist/events/index.cjs +0 -4
  190. package/dist/events/index.d.cts +0 -46
  191. package/dist/events/index.d.ts +0 -46
  192. package/dist/events/index.js +0 -3
  193. package/dist/events-BHJJjPDN.js +0 -78
  194. package/dist/events-B_fJZf9E.cjs +0 -90
  195. package/dist/featureFlagServiceContext-CUBoBV2i.cjs +0 -56
  196. package/dist/featureFlagServiceContext-Cpw8omUr.d.ts +0 -23
  197. package/dist/featureFlagServiceContext-Cvn6fcdB.d.cts +0 -23
  198. package/dist/featureFlagServiceContext-Dg8okVk1.js +0 -42
  199. package/dist/featureGates-Blx10fwB.js +0 -27
  200. package/dist/featureGates-DcZNrUma.cjs +0 -33
  201. package/dist/frontendConfig-DnMZfvcA.d.cts +0 -857
  202. package/dist/frontendConfig-Dqxbqo8G.d.ts +0 -857
  203. package/dist/globalSearch-C94-vEVh.cjs +0 -39
  204. package/dist/globalSearch-Dlbnfasm.js +0 -14
  205. package/dist/graphql-B9HhDXYt.cjs +0 -53
  206. package/dist/graphql-W7GMIHUu.js +0 -36
  207. package/dist/graphqlConfig-B4ddz1vH.cjs +0 -39
  208. package/dist/graphqlConfig-BnjOdeX7.js +0 -14
  209. package/dist/graphqlContext-6-GcR9zd.d.cts +0 -28
  210. package/dist/graphqlContext-8kw4aLRc.js +0 -96
  211. package/dist/graphqlContext-EhYZM1v_.d.ts +0 -28
  212. package/dist/graphqlContext-Fwc6Upvh.cjs +0 -111
  213. package/dist/hooks/AmplitudeOperations/index.cjs +0 -22
  214. package/dist/hooks/AmplitudeOperations/index.d.cts +0 -12
  215. package/dist/hooks/AmplitudeOperations/index.d.ts +0 -12
  216. package/dist/hooks/AmplitudeOperations/index.js +0 -22
  217. package/dist/hooks/AppDetails/index.cjs +0 -19
  218. package/dist/hooks/AppDetails/index.d.cts +0 -27
  219. package/dist/hooks/AppDetails/index.d.ts +0 -27
  220. package/dist/hooks/AppDetails/index.js +0 -19
  221. package/dist/hooks/BlockBackButton/index.cjs +0 -29
  222. package/dist/hooks/BlockBackButton/index.d.cts +0 -5
  223. package/dist/hooks/BlockBackButton/index.d.ts +0 -5
  224. package/dist/hooks/BlockBackButton/index.js +0 -27
  225. package/dist/hooks/CdnOperations/index.cjs +0 -24
  226. package/dist/hooks/CdnOperations/index.d.cts +0 -7
  227. package/dist/hooks/CdnOperations/index.d.ts +0 -7
  228. package/dist/hooks/CdnOperations/index.js +0 -22
  229. package/dist/hooks/ChatToggle/index.cjs +0 -64
  230. package/dist/hooks/ChatToggle/index.d.cts +0 -12
  231. package/dist/hooks/ChatToggle/index.d.ts +0 -12
  232. package/dist/hooks/ChatToggle/index.js +0 -62
  233. package/dist/hooks/ChatToggleAnalytics/index.cjs +0 -38
  234. package/dist/hooks/ChatToggleAnalytics/index.d.cts +0 -9
  235. package/dist/hooks/ChatToggleAnalytics/index.d.ts +0 -9
  236. package/dist/hooks/ChatToggleAnalytics/index.js +0 -36
  237. package/dist/hooks/CustomerSupportHandoff/index.cjs +0 -36
  238. package/dist/hooks/CustomerSupportHandoff/index.d.cts +0 -16
  239. package/dist/hooks/CustomerSupportHandoff/index.d.ts +0 -16
  240. package/dist/hooks/CustomerSupportHandoff/index.js +0 -34
  241. package/dist/hooks/Debounce/index.cjs +0 -3
  242. package/dist/hooks/Debounce/index.d.cts +0 -5
  243. package/dist/hooks/Debounce/index.d.ts +0 -5
  244. package/dist/hooks/Debounce/index.js +0 -3
  245. package/dist/hooks/ElementObserver/index.cjs +0 -179
  246. package/dist/hooks/ElementObserver/index.d.cts +0 -29
  247. package/dist/hooks/ElementObserver/index.d.ts +0 -29
  248. package/dist/hooks/ElementObserver/index.js +0 -177
  249. package/dist/hooks/GrabAndScroll/index.cjs +0 -99
  250. package/dist/hooks/GrabAndScroll/index.d.cts +0 -14
  251. package/dist/hooks/GrabAndScroll/index.d.ts +0 -14
  252. package/dist/hooks/GrabAndScroll/index.js +0 -97
  253. package/dist/hooks/GraphQLConfig/index.cjs +0 -17
  254. package/dist/hooks/GraphQLConfig/index.d.cts +0 -28
  255. package/dist/hooks/GraphQLConfig/index.d.ts +0 -28
  256. package/dist/hooks/GraphQLConfig/index.js +0 -16
  257. package/dist/hooks/IdentifyUser/index.cjs +0 -60
  258. package/dist/hooks/IdentifyUser/index.d.cts +0 -10
  259. package/dist/hooks/IdentifyUser/index.d.ts +0 -10
  260. package/dist/hooks/IdentifyUser/index.js +0 -58
  261. package/dist/hooks/ImageResolver/index.cjs +0 -55
  262. package/dist/hooks/ImageResolver/index.d.cts +0 -7
  263. package/dist/hooks/ImageResolver/index.d.ts +0 -7
  264. package/dist/hooks/ImageResolver/index.js +0 -53
  265. package/dist/hooks/Intersection/index.cjs +0 -3
  266. package/dist/hooks/Intersection/index.d.cts +0 -7
  267. package/dist/hooks/Intersection/index.d.ts +0 -7
  268. package/dist/hooks/Intersection/index.js +0 -3
  269. package/dist/hooks/IsSmallScreen/index.cjs +0 -22
  270. package/dist/hooks/IsSmallScreen/index.d.cts +0 -5
  271. package/dist/hooks/IsSmallScreen/index.d.ts +0 -5
  272. package/dist/hooks/IsSmallScreen/index.js +0 -20
  273. package/dist/hooks/LocalStorageOperations/index.cjs +0 -79
  274. package/dist/hooks/LocalStorageOperations/index.d.cts +0 -17
  275. package/dist/hooks/LocalStorageOperations/index.d.ts +0 -17
  276. package/dist/hooks/LocalStorageOperations/index.js +0 -74
  277. package/dist/hooks/MessageFilter/index.cjs +0 -54
  278. package/dist/hooks/MessageFilter/index.d.cts +0 -30
  279. package/dist/hooks/MessageFilter/index.d.ts +0 -30
  280. package/dist/hooks/MessageFilter/index.js +0 -54
  281. package/dist/hooks/MessageScrollObserver/index.cjs +0 -36
  282. package/dist/hooks/MessageScrollObserver/index.d.cts +0 -5
  283. package/dist/hooks/MessageScrollObserver/index.d.ts +0 -5
  284. package/dist/hooks/MessageScrollObserver/index.js +0 -34
  285. package/dist/hooks/NewOrgConfig/index.cjs +0 -20
  286. package/dist/hooks/NewOrgConfig/index.d.cts +0 -20
  287. package/dist/hooks/NewOrgConfig/index.d.ts +0 -20
  288. package/dist/hooks/NewOrgConfig/index.js +0 -20
  289. package/dist/hooks/Search/index.cjs +0 -326
  290. package/dist/hooks/Search/index.d.cts +0 -61
  291. package/dist/hooks/Search/index.d.ts +0 -61
  292. package/dist/hooks/Search/index.js +0 -323
  293. package/dist/hooks/SearchOperations/index.cjs +0 -102
  294. package/dist/hooks/SearchOperations/index.d.cts +0 -22
  295. package/dist/hooks/SearchOperations/index.d.ts +0 -22
  296. package/dist/hooks/SearchOperations/index.js +0 -99
  297. package/dist/hooks/SessionStorageOperations/index.cjs +0 -30
  298. package/dist/hooks/SessionStorageOperations/index.d.cts +0 -8
  299. package/dist/hooks/SessionStorageOperations/index.d.ts +0 -8
  300. package/dist/hooks/SessionStorageOperations/index.js +0 -28
  301. package/dist/hooks/ShopifyUrlOperations/index.cjs +0 -53
  302. package/dist/hooks/ShopifyUrlOperations/index.d.cts +0 -23
  303. package/dist/hooks/ShopifyUrlOperations/index.d.ts +0 -23
  304. package/dist/hooks/ShopifyUrlOperations/index.js +0 -49
  305. package/dist/hooks/SnapCalculator/index.cjs +0 -29
  306. package/dist/hooks/SnapCalculator/index.d.cts +0 -12
  307. package/dist/hooks/SnapCalculator/index.d.ts +0 -12
  308. package/dist/hooks/SnapCalculator/index.js +0 -27
  309. package/dist/hooks/SystemSettingsContext/index.cjs +0 -7
  310. package/dist/hooks/SystemSettingsContext/index.d.cts +0 -23
  311. package/dist/hooks/SystemSettingsContext/index.d.ts +0 -23
  312. package/dist/hooks/SystemSettingsContext/index.js +0 -7
  313. package/dist/hooks/TrackComponentVisibleEvent/index.cjs +0 -22
  314. package/dist/hooks/TrackComponentVisibleEvent/index.d.cts +0 -18
  315. package/dist/hooks/TrackComponentVisibleEvent/index.d.ts +0 -18
  316. package/dist/hooks/TrackComponentVisibleEvent/index.js +0 -22
  317. package/dist/hooks/UpdateAnalyticsProps/index.cjs +0 -62
  318. package/dist/hooks/UpdateAnalyticsProps/index.d.cts +0 -9
  319. package/dist/hooks/UpdateAnalyticsProps/index.d.ts +0 -9
  320. package/dist/hooks/UpdateAnalyticsProps/index.js +0 -59
  321. package/dist/hooks/utils.cjs +0 -8
  322. package/dist/hooks/utils.d.cts +0 -13
  323. package/dist/hooks/utils.d.ts +0 -13
  324. package/dist/hooks/utils.js +0 -3
  325. package/dist/index-BN-3ctk_.d.ts +0 -184
  326. package/dist/index-BPxqQmpF.d.ts +0 -1
  327. package/dist/index-Bl9pjZeG.d.ts +0 -186
  328. package/dist/index-Bmub8e38.d.cts +0 -98
  329. package/dist/index-BoYC9XLW.d.ts +0 -39
  330. package/dist/index-C12-NmS7.d.cts +0 -25
  331. package/dist/index-C6KdON7d.d.ts +0 -25
  332. package/dist/index-CESxqFso.d.cts +0 -228
  333. package/dist/index-CK_J3QMY.d.ts +0 -676
  334. package/dist/index-CVa3DeXJ.d.cts +0 -9
  335. package/dist/index-C_MIfxF0.d.cts +0 -676
  336. package/dist/index-CiWEYzXl.d.cts +0 -184
  337. package/dist/index-DOii3C6b.d.ts +0 -9
  338. package/dist/index-Dcgz5i3Q.d.cts +0 -186
  339. package/dist/index-Dr_c2DDq.d.ts +0 -98
  340. package/dist/index-DsiilEj-.d.ts +0 -228
  341. package/dist/index-RcVcRKH7.d.cts +0 -1
  342. package/dist/index-hdbCEjYy.d.cts +0 -39
  343. package/dist/interceptors/index.cjs +0 -4
  344. package/dist/interceptors/index.d.cts +0 -20
  345. package/dist/interceptors/index.d.ts +0 -20
  346. package/dist/interceptors/index.js +0 -4
  347. package/dist/interceptors/types.cjs +0 -1
  348. package/dist/interceptors/types.d.cts +0 -13
  349. package/dist/interceptors/types.d.ts +0 -13
  350. package/dist/interceptors/types.js +0 -3
  351. package/dist/localStorageContext-Dwgto93_.js +0 -95
  352. package/dist/localStorageContext-cnMYDllE.cjs +0 -115
  353. package/dist/logger-Cp7J4YJT.cjs +0 -26
  354. package/dist/logger-oAgZx2-m.js +0 -20
  355. package/dist/models-B1P-dSCW.cjs +0 -1537
  356. package/dist/models-CgvSM2fW.js +0 -1296
  357. package/dist/newOrgConfigAtom-D6R-7HCk.cjs +0 -15
  358. package/dist/newOrgConfigAtom-bn1lnljf.js +0 -8
  359. package/dist/newOrgConfigContext-BKb9qGfc.d.cts +0 -16
  360. package/dist/newOrgConfigContext-BX6cyQRB.cjs +0 -68
  361. package/dist/newOrgConfigContext-D9PpVqyW.d.ts +0 -16
  362. package/dist/newOrgConfigContext-UshqFMAV.js +0 -53
  363. package/dist/nodeSelector-B3bPtEjX.d.cts +0 -31
  364. package/dist/nodeSelector-D5gjDWZ3.d.ts +0 -31
  365. package/dist/org-CIhjzxWr.cjs +0 -43
  366. package/dist/org-CeWXnpwF.js +0 -12
  367. package/dist/orgAnalyticsConfig-BC4_sEmn.js +0 -14
  368. package/dist/orgAnalyticsConfig-DsGbyFhO.cjs +0 -39
  369. package/dist/search-76xcuxjY.cjs +0 -205
  370. package/dist/search-B6xaOds7.js +0 -126
  371. package/dist/search-BLShhjvR.d.ts +0 -20
  372. package/dist/search-filter-types-BBIjvwJV.d.cts +0 -102
  373. package/dist/search-filter-types-BlmWOnlA.d.ts +0 -102
  374. package/dist/search-y-ioX5Mz.d.cts +0 -20
  375. package/dist/searchContext-5qTU8CbH.js +0 -129
  376. package/dist/searchContext-DmXo2rpU.cjs +0 -145
  377. package/dist/searchServiceAdapter-DEv1tTn0.cjs +0 -34
  378. package/dist/searchServiceAdapter-WyCU55NV.js +0 -16
  379. package/dist/sessionStorageContext-B-UFXyJR.cjs +0 -66
  380. package/dist/sessionStorageContext-DnuKi3Gk.js +0 -52
  381. package/dist/shopifyUrlContext-Lm-Xcut2.cjs +0 -75
  382. package/dist/shopifyUrlContext-jLW63VLY.js +0 -61
  383. package/dist/spiffyWidgets-BuS00VaQ.d.cts +0 -20
  384. package/dist/spiffyWidgets-GILaqHv6.d.ts +0 -20
  385. package/dist/systemSettingsContext--LcXOVJz.js +0 -39
  386. package/dist/systemSettingsContext-CafaP6Zh.cjs +0 -60
  387. package/dist/test-types-EzMFw_U3.d.ts +0 -40
  388. package/dist/test-types-ThQiO_cc.d.cts +0 -40
  389. package/dist/types/index.cjs +0 -34
  390. package/dist/types/index.d.cts +0 -3
  391. package/dist/types/index.d.ts +0 -3
  392. package/dist/types/index.js +0 -31
  393. package/dist/types-6siNDmGv.d.ts +0 -10
  394. package/dist/types-BN2z0HcL.d.ts +0 -51
  395. package/dist/types-BwNrLPSZ.cjs +0 -106
  396. package/dist/types-CKMMb_gX.d.cts +0 -51
  397. package/dist/types-CS0Hrzja.js +0 -30
  398. package/dist/types-CxObxLKs.cjs +0 -48
  399. package/dist/types-D3uOF0Oy.js +0 -76
  400. package/dist/types-D4aa7_7x.d.cts +0 -10
  401. package/dist/types-DtTnp0o0.js +0 -1
  402. package/dist/types-a8gm_IaQ.cjs +0 -0
  403. package/dist/types.cjs +0 -0
  404. package/dist/types.d.cts +0 -15
  405. package/dist/types.d.ts +0 -15
  406. package/dist/types.js +0 -1
  407. package/dist/unsupportedProductExceptions-CKiri_vO.cjs +0 -32
  408. package/dist/unsupportedProductExceptions-ClxlJ6cU.js +0 -20
  409. package/dist/urlsParser-BV5yF8sa.cjs +0 -78
  410. package/dist/urlsParser-DUgV_Qy9.js +0 -42
  411. package/dist/useAmplitudeOperations-aGOqxc4V.cjs +0 -41
  412. package/dist/useAmplitudeOperations-wQnkMaDm.js +0 -34
  413. package/dist/useAppDetails-9WXEc3mg.cjs +0 -38
  414. package/dist/useAppDetails-mNC2PBqH.js +0 -30
  415. package/dist/useDebounce-BaIp-A1W.cjs +0 -26
  416. package/dist/useDebounce-CxPj9WmE.js +0 -19
  417. package/dist/useGraphQLConfig-CTsRsKd2.js +0 -63
  418. package/dist/useGraphQLConfig-D7naV2RD.cjs +0 -76
  419. package/dist/useIntersection-B4J9UhaG.js +0 -21
  420. package/dist/useIntersection-DKWc5MY6.cjs +0 -28
  421. package/dist/useMessageInterceptor-CstX10ih.cjs +0 -33
  422. package/dist/useMessageInterceptor-D5oAekXn.js +0 -25
  423. package/dist/userIdentityContext-BA6EN-pz.cjs +0 -125
  424. package/dist/userIdentityContext-D2oFVFzo.d.cts +0 -20
  425. package/dist/userIdentityContext-FTwTL0WF.js +0 -109
  426. package/dist/userIdentityContext-wYRpgkaJ.d.ts +0 -20
  427. package/dist/utilityTypes-DynzxjK3.js +0 -1
  428. package/dist/utilityTypes-xb8SjKSV.cjs +0 -0
  429. package/dist/utils-2SWrJ12w.cjs +0 -29
  430. package/dist/utils-ARmpTh1O.js +0 -27
  431. package/dist/utils-B1xLx9S8.d.ts +0 -15
  432. package/dist/utils-B3x_9JTY.d.cts +0 -15
  433. package/dist/utils-BSYichA7.d.cts +0 -22
  434. package/dist/utils-Bcz5kAgP.js +0 -92
  435. package/dist/utils-BgMcvG6l.js +0 -606
  436. package/dist/utils-CMqFfqZx.cjs +0 -130
  437. package/dist/utils-Cavu4XiM.cjs +0 -33
  438. package/dist/utils-CqBxIpEV.js +0 -23
  439. package/dist/utils-D_aOvxMg.cjs +0 -715
  440. package/dist/utils-FU_r-pTj.d.ts +0 -22
  441. package/dist/variantInfo-B7IwRpCg.cjs +0 -0
  442. package/dist/variantInfo-BtOYUGWa.js +0 -1
@@ -1,228 +0,0 @@
1
- //#region src/application/models/utilityTypes/primitive.d.ts
2
- /**
3
- * Matches any [primitive value](https://developer.mozilla.org/en-US/docs/Glossary/Primitive).
4
- *
5
- * @category Type
6
- */
7
- type Primitive = null | undefined | string | number | boolean | symbol | bigint;
8
- //#endregion
9
- //#region src/application/models/utilityTypes/trim.d.ts
10
- /**
11
- * Remove spaces from the left side.
12
- */
13
- type TrimLeft<V extends string> = V extends `${Whitespace}${infer R}` ? TrimLeft<R> : V;
14
- /**
15
- * Remove spaces from the right side.
16
- */
17
- type TrimRight<V extends string> = V extends `${infer R}${Whitespace}` ? TrimRight<R> : V;
18
- /**
19
- * Remove leading and trailing spaces from a string.
20
- * @example
21
- * ```
22
- * import type {Trim} from 'type-fest';
23
- *
24
- * Trim<' foo '>
25
- * //=> 'foo'
26
- * ```
27
- *
28
- * @category String
29
- * @category Template literal
30
- */
31
- type Trim<V extends string> = TrimLeft<TrimRight<V>>;
32
- //#endregion
33
- //#region src/application/models/utilityTypes/internal.d.ts
34
- /**
35
- * Matches any primitive, `void`, `Date`, or `RegExp` value.
36
- */
37
- type BuiltIns = Primitive | void | Date | RegExp;
38
- /**
39
- * Matches non-recursive types.
40
- */
41
- type NonRecursiveType = BuiltIns | Function | (new (...arguments_: any[]) => unknown);
42
- /**
43
- * Returns a boolean for whether the string is numeric.
44
- *
45
- * This type is a workaround for [Microsoft/TypeScript#46109](https://github.com/microsoft/TypeScript/issues/46109#issuecomment-930307987).
46
- */
47
- type IsNumeric<T extends string> = T extends `${number}` ? Trim<T> extends T ? true : false : false;
48
- /**
49
- * Returns a boolean for whether the string is lowercased.
50
- */
51
- type IsLowerCase<T extends string> = T extends Lowercase<T> ? true : false;
52
- /**
53
- * Returns a boolean for whether the string is upper-cased.
54
- */
55
- type IsUpperCase<T extends string> = T extends Uppercase<T> ? true : false;
56
- type WordSeparators = '-' | '_' | Whitespace;
57
- type Whitespace = '\u{9}' | '\u{A}' | '\u{B}' | '\u{C}' | '\u{D}' | '\u{20}' | '\u{85}' | '\u{A0}' | '\u{1680}' | '\u{2000}' | '\u{2001}' | '\u{2002}' | '\u{2003}' | '\u{2004}' | '\u{2005}' | '\u{2006}' | '\u{2007}' | '\u{2008}' | '\u{2009}' | '\u{200A}' | '\u{2028}' | '\u{2029}' | '\u{202F}' | '\u{205F}' | '\u{3000}' | '\u{FEFF}';
58
- type UpperCaseCharacters = 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z';
59
- //#endregion
60
- //#region src/application/models/utilityTypes/splitWords.d.ts
61
- type SkipEmptyWord<Word extends string> = Word extends '' ? [] : [Word];
62
- type RemoveLastCharacter<Sentence extends string, Character extends string> = Sentence extends `${infer LeftSide}${Character}` ? SkipEmptyWord<LeftSide> : never;
63
- /**
64
- * Split a string (almost) like Lodash's `_.words()` function.
65
- *
66
- * - Split on each word that begins with a capital letter.
67
- * - Split on each {@link WordSeparators}.
68
- * - Split on numeric sequence.
69
- *
70
- * @example
71
- * ```
72
- * type Words0 = SplitWords<'helloWorld'>; // ['hello', 'World']
73
- * type Words1 = SplitWords<'helloWORLD'>; // ['hello', 'WORLD']
74
- * type Words2 = SplitWords<'hello-world'>; // ['hello', 'world']
75
- * type Words3 = SplitWords<'--hello the_world'>; // ['hello', 'the', 'world']
76
- * type Words4 = SplitWords<'lifeIs42'>; // ['life', 'Is', '42']
77
- * ```
78
- *
79
- * @internal
80
- * @category Change case
81
- * @category Template literal
82
- */
83
- type SplitWords<Sentence extends string, LastCharacter extends string = '', CurrentWord extends string = ''> = Sentence extends `${infer FirstCharacter}${infer RemainingCharacters}` ? FirstCharacter extends WordSeparators ? [...SkipEmptyWord<CurrentWord>, ...SplitWords<RemainingCharacters>] : LastCharacter extends '' ? SplitWords<RemainingCharacters, FirstCharacter, FirstCharacter> : [false, true] extends [IsNumeric<LastCharacter>, IsNumeric<FirstCharacter>] ? [...SkipEmptyWord<CurrentWord>, ...SplitWords<RemainingCharacters, FirstCharacter, FirstCharacter>] : [true, false] extends [IsNumeric<LastCharacter>, IsNumeric<FirstCharacter>] ? [...SkipEmptyWord<CurrentWord>, ...SplitWords<RemainingCharacters, FirstCharacter, FirstCharacter>] : [true, true] extends [IsNumeric<LastCharacter>, IsNumeric<FirstCharacter>] ? SplitWords<RemainingCharacters, FirstCharacter, `${CurrentWord}${FirstCharacter}`> : [true, true] extends [IsLowerCase<LastCharacter>, IsUpperCase<FirstCharacter>] ? [...SkipEmptyWord<CurrentWord>, ...SplitWords<RemainingCharacters, FirstCharacter, FirstCharacter>] : [true, true] extends [IsUpperCase<LastCharacter>, IsLowerCase<FirstCharacter>] ? [...RemoveLastCharacter<CurrentWord, LastCharacter>, ...SplitWords<RemainingCharacters, FirstCharacter, `${LastCharacter}${FirstCharacter}`>] : SplitWords<RemainingCharacters, FirstCharacter, `${CurrentWord}${FirstCharacter}`> : [...SkipEmptyWord<CurrentWord>];
84
- //#endregion
85
- //#region src/application/models/utilityTypes/camelCase.d.ts
86
- /**
87
- * CamelCase options.
88
- *
89
- * @see {@link CamelCase}
90
- */
91
- type CamelCaseOptions = {
92
- /**
93
- * Whether to preserved consecutive uppercase letter.
94
- *
95
- * @default true
96
- */
97
- preserveConsecutiveUppercase?: boolean;
98
- };
99
- /**
100
- * Convert an array of words to camel-case.
101
- */
102
- type CamelCaseFromArray<Words extends string[], Options extends CamelCaseOptions, OutputString extends string = ''> = Words extends [infer FirstWord extends string, ...infer RemainingWords extends string[]] ? Options['preserveConsecutiveUppercase'] extends true ? `${Capitalize<FirstWord>}${CamelCaseFromArray<RemainingWords, Options>}` : `${Capitalize<Lowercase<FirstWord>>}${CamelCaseFromArray<RemainingWords, Options>}` : OutputString;
103
- /**
104
- * Convert a string literal to camel-case.
105
- *
106
- * This can be useful when, for example, converting some kebab-cased command-line flags or a snake-cased database result.
107
- *
108
- * By default, consecutive uppercase letter are preserved. See {@link CamelCaseOptions.preserveConsecutiveUppercase preserveConsecutiveUppercase} option to change this behaviour.
109
- *
110
- * @example
111
- * ```
112
- * import type {CamelCase} from 'type-fest';
113
- *
114
- * // Simple
115
- *
116
- * const someVariable: CamelCase<'foo-bar'> = 'fooBar';
117
- *
118
- * // Advanced
119
- *
120
- * type CamelCasedProperties<T> = {
121
- * [K in keyof T as CamelCase<K>]: T[K]
122
- * };
123
- *
124
- * interface RawOptions {
125
- * 'dry-run': boolean;
126
- * 'full_family_name': string;
127
- * foo: number;
128
- * BAR: string;
129
- * QUZ_QUX: number;
130
- * 'OTHER-FIELD': boolean;
131
- * }
132
- *
133
- * const dbResult: CamelCasedProperties<RawOptions> = {
134
- * dryRun: true,
135
- * fullFamilyName: 'bar.js',
136
- * foo: 123,
137
- * bar: 'foo',
138
- * quzQux: 6,
139
- * otherField: false
140
- * };
141
- * ```
142
- *
143
- * @category Change case
144
- * @category Template literal
145
- */
146
- type CamelCase<Type, Options extends CamelCaseOptions = {
147
- preserveConsecutiveUppercase: true;
148
- }> = Type extends string ? string extends Type ? Type : Uncapitalize<CamelCaseFromArray<SplitWords<Type extends Uppercase<Type> ? Lowercase<Type> : Type>, Options>> : Type;
149
- //#endregion
150
- //#region src/application/models/utilityTypes/unknownArray.d.ts
151
- /**
152
- * Represents an array with `unknown` value.
153
- *
154
- * Use case: You want a type that all arrays can be assigned to, but you don't care about the value.
155
- *
156
- * @example
157
- * ```
158
- * import type {UnknownArray} from 'type-fest';
159
- *
160
- * type IsArray<T> = T extends UnknownArray ? true : false;
161
- *
162
- * type A = IsArray<['foo']>;
163
- * //=> true
164
- *
165
- * type B = IsArray<readonly number[]>;
166
- * //=> true
167
- *
168
- * type C = IsArray<string>;
169
- * //=> false
170
- * ```
171
- *
172
- * @category Type
173
- * @category Array
174
- */
175
- type UnknownArray = readonly unknown[];
176
- //#endregion
177
- //#region src/application/models/utilityTypes/camelCasedPropertiesDeep.d.ts
178
- /**
179
- * Convert object properties to camel case recursively.
180
- *
181
- * This can be useful when, for example, converting some API types from a different style.
182
- *
183
- * @see CamelCasedProperties
184
- * @see CamelCase
185
- *
186
- * @example
187
- * ```
188
- * import type {CamelCasedPropertiesDeep} from 'type-fest';
189
- *
190
- * interface User {
191
- * UserId: number;
192
- * UserName: string;
193
- * }
194
- *
195
- * interface UserWithFriends {
196
- * UserInfo: User;
197
- * UserFriends: User[];
198
- * }
199
- *
200
- * const result: CamelCasedPropertiesDeep<UserWithFriends> = {
201
- * userInfo: {
202
- * userId: 1,
203
- * userName: 'Tom',
204
- * },
205
- * userFriends: [
206
- * {
207
- * userId: 2,
208
- * userName: 'Jerry',
209
- * },
210
- * {
211
- * userId: 3,
212
- * userName: 'Spike',
213
- * },
214
- * ],
215
- * };
216
- * ```
217
- *
218
- * @category Change case
219
- * @category Template literal
220
- * @category Object
221
- */
222
- type CamelCasedPropertiesDeep<Value, Options extends CamelCaseOptions = {
223
- preserveConsecutiveUppercase: true;
224
- }> = Value extends Function ? Value : Value extends UnknownArray ? CamelCasedPropertiesArrayDeep<Value> : Value extends Set<infer U> ? Set<CamelCasedPropertiesDeep<U, Options>> : { [K in keyof Value as CamelCase<K, Options>]: CamelCasedPropertiesDeep<Value[K], Options> };
225
- type CamelCasedPropertiesArrayDeep<Value extends UnknownArray> = Value extends [] ? [] : Value extends [infer U, ...infer V] ? [CamelCasedPropertiesDeep<U>, ...CamelCasedPropertiesDeep<V>] : Value extends readonly [infer U, ...infer V] ? readonly [CamelCasedPropertiesDeep<U>, ...CamelCasedPropertiesDeep<V>] : Value extends readonly [...infer U, infer V] ? [...CamelCasedPropertiesDeep<U>, CamelCasedPropertiesDeep<V>] : Value extends readonly [...infer U, infer V] ? readonly [...CamelCasedPropertiesDeep<U>, CamelCasedPropertiesDeep<V>] : Value extends Array<infer U> ? Array<CamelCasedPropertiesDeep<U>> : Value extends ReadonlyArray<infer U> ? ReadonlyArray<CamelCasedPropertiesDeep<U>> : never;
226
- //#endregion
227
- export { BuiltIns, CamelCase, CamelCaseOptions, CamelCasedPropertiesDeep, IsLowerCase, IsNumeric, IsUpperCase, NonRecursiveType, Primitive, SplitWords, Trim, UnknownArray, UpperCaseCharacters, Whitespace, WordSeparators };
228
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgtRHNpaWxFai0uZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi9zcmMvYXBwbGljYXRpb24vbW9kZWxzL3V0aWxpdHlUeXBlcy9wcmltaXRpdmUuZC50cyIsIi4uL3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvdXRpbGl0eVR5cGVzL3RyaW0uZC50cyIsIi4uL3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvdXRpbGl0eVR5cGVzL2ludGVybmFsLmQudHMiLCIuLi9zcmMvYXBwbGljYXRpb24vbW9kZWxzL3V0aWxpdHlUeXBlcy9zcGxpdFdvcmRzLmQudHMiLCIuLi9zcmMvYXBwbGljYXRpb24vbW9kZWxzL3V0aWxpdHlUeXBlcy9jYW1lbENhc2UuZC50cyIsIi4uL3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvdXRpbGl0eVR5cGVzL3Vua25vd25BcnJheS5kLnRzIiwiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy91dGlsaXR5VHlwZXMvY2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBNYXRjaGVzIGFueSBbcHJpbWl0aXZlIHZhbHVlXShodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL0dsb3NzYXJ5L1ByaW1pdGl2ZSkuXG4gKlxuICogQGNhdGVnb3J5IFR5cGVcbiAqL1xuZXhwb3J0IHR5cGUgUHJpbWl0aXZlID0gbnVsbCB8IHVuZGVmaW5lZCB8IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBzeW1ib2wgfCBiaWdpbnQ7XG4iLCJpbXBvcnQgdHlwZSB7IFdoaXRlc3BhY2UgfSBmcm9tICcuL2ludGVybmFsJztcbi8qKlxuICogUmVtb3ZlIHNwYWNlcyBmcm9tIHRoZSBsZWZ0IHNpZGUuXG4gKi9cbnR5cGUgVHJpbUxlZnQ8ViBleHRlbmRzIHN0cmluZz4gPSBWIGV4dGVuZHMgYCR7V2hpdGVzcGFjZX0ke2luZmVyIFJ9YCA/IFRyaW1MZWZ0PFI+IDogVjtcbi8qKlxuICogUmVtb3ZlIHNwYWNlcyBmcm9tIHRoZSByaWdodCBzaWRlLlxuICovXG50eXBlIFRyaW1SaWdodDxWIGV4dGVuZHMgc3RyaW5nPiA9IFYgZXh0ZW5kcyBgJHtpbmZlciBSfSR7V2hpdGVzcGFjZX1gID8gVHJpbVJpZ2h0PFI+IDogVjtcbi8qKlxuICogUmVtb3ZlIGxlYWRpbmcgYW5kIHRyYWlsaW5nIHNwYWNlcyBmcm9tIGEgc3RyaW5nLlxuICogQGV4YW1wbGVcbiAqIGBgYFxuICogaW1wb3J0IHR5cGUge1RyaW19IGZyb20gJ3R5cGUtZmVzdCc7XG4gKlxuICogVHJpbTwnIGZvbyAnPlxuICogLy89PiAnZm9vJ1xuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IFN0cmluZ1xuICogQGNhdGVnb3J5IFRlbXBsYXRlIGxpdGVyYWxcbiAqL1xuZXhwb3J0IHR5cGUgVHJpbTxWIGV4dGVuZHMgc3RyaW5nPiA9IFRyaW1MZWZ0PFRyaW1SaWdodDxWPj47XG5leHBvcnQge307XG4iLCJpbXBvcnQgeyBQcmltaXRpdmUgfSBmcm9tICcuL3ByaW1pdGl2ZSc7XG5pbXBvcnQgeyBUcmltIH0gZnJvbSAnLi90cmltJztcbi8qKlxuICogTWF0Y2hlcyBhbnkgcHJpbWl0aXZlLCBgdm9pZGAsIGBEYXRlYCwgb3IgYFJlZ0V4cGAgdmFsdWUuXG4gKi9cbmV4cG9ydCB0eXBlIEJ1aWx0SW5zID0gUHJpbWl0aXZlIHwgdm9pZCB8IERhdGUgfCBSZWdFeHA7XG4vKipcbiAqIE1hdGNoZXMgbm9uLXJlY3Vyc2l2ZSB0eXBlcy5cbiAqL1xuZXhwb3J0IHR5cGUgTm9uUmVjdXJzaXZlVHlwZSA9IEJ1aWx0SW5zIHwgRnVuY3Rpb24gfCAobmV3ICguLi5hcmd1bWVudHNfOiBhbnlbXSkgPT4gdW5rbm93bik7XG4vKipcbiAqIFJldHVybnMgYSBib29sZWFuIGZvciB3aGV0aGVyIHRoZSBzdHJpbmcgaXMgbnVtZXJpYy5cbiAqXG4gKiBUaGlzIHR5cGUgaXMgYSB3b3JrYXJvdW5kIGZvciBbTWljcm9zb2Z0L1R5cGVTY3JpcHQjNDYxMDldKGh0dHBzOi8vZ2l0aHViLmNvbS9taWNyb3NvZnQvVHlwZVNjcmlwdC9pc3N1ZXMvNDYxMDkjaXNzdWVjb21tZW50LTkzMDMwNzk4NykuXG4gKi9cbmV4cG9ydCB0eXBlIElzTnVtZXJpYzxUIGV4dGVuZHMgc3RyaW5nPiA9IFQgZXh0ZW5kcyBgJHtudW1iZXJ9YCA/IFRyaW08VD4gZXh0ZW5kcyBUID8gdHJ1ZSA6IGZhbHNlIDogZmFsc2U7XG4vKipcbiAqIFJldHVybnMgYSBib29sZWFuIGZvciB3aGV0aGVyIHRoZSBzdHJpbmcgaXMgbG93ZXJjYXNlZC5cbiAqL1xuZXhwb3J0IHR5cGUgSXNMb3dlckNhc2U8VCBleHRlbmRzIHN0cmluZz4gPSBUIGV4dGVuZHMgTG93ZXJjYXNlPFQ+ID8gdHJ1ZSA6IGZhbHNlO1xuLyoqXG4gKiBSZXR1cm5zIGEgYm9vbGVhbiBmb3Igd2hldGhlciB0aGUgc3RyaW5nIGlzIHVwcGVyLWNhc2VkLlxuICovXG5leHBvcnQgdHlwZSBJc1VwcGVyQ2FzZTxUIGV4dGVuZHMgc3RyaW5nPiA9IFQgZXh0ZW5kcyBVcHBlcmNhc2U8VD4gPyB0cnVlIDogZmFsc2U7XG5leHBvcnQgdHlwZSBXb3JkU2VwYXJhdG9ycyA9ICctJyB8ICdfJyB8IFdoaXRlc3BhY2U7XG5leHBvcnQgdHlwZSBXaGl0ZXNwYWNlID0gJ1xcdXs5fScgfCAnXFx1e0F9JyB8ICdcXHV7Qn0nIHwgJ1xcdXtDfScgfCAnXFx1e0R9JyB8ICdcXHV7MjB9JyB8ICdcXHV7ODV9JyB8ICdcXHV7QTB9JyB8ICdcXHV7MTY4MH0nIHwgJ1xcdXsyMDAwfScgfCAnXFx1ezIwMDF9JyB8ICdcXHV7MjAwMn0nIHwgJ1xcdXsyMDAzfScgfCAnXFx1ezIwMDR9JyB8ICdcXHV7MjAwNX0nIHwgJ1xcdXsyMDA2fScgfCAnXFx1ezIwMDd9JyB8ICdcXHV7MjAwOH0nIHwgJ1xcdXsyMDA5fScgfCAnXFx1ezIwMEF9JyB8ICdcXHV7MjAyOH0nIHwgJ1xcdXsyMDI5fScgfCAnXFx1ezIwMkZ9JyB8ICdcXHV7MjA1Rn0nIHwgJ1xcdXszMDAwfScgfCAnXFx1e0ZFRkZ9JztcbmV4cG9ydCB0eXBlIFVwcGVyQ2FzZUNoYXJhY3RlcnMgPSAnQScgfCAnQicgfCAnQycgfCAnRCcgfCAnRScgfCAnRicgfCAnRycgfCAnSCcgfCAnSScgfCAnSicgfCAnSycgfCAnTCcgfCAnTScgfCAnTicgfCAnTycgfCAnUCcgfCAnUScgfCAnUicgfCAnUycgfCAnVCcgfCAnVScgfCAnVicgfCAnVycgfCAnWCcgfCAnWScgfCAnWic7XG4iLCJpbXBvcnQgdHlwZSB7IElzTG93ZXJDYXNlLCBJc051bWVyaWMsIElzVXBwZXJDYXNlLCBXb3JkU2VwYXJhdG9ycyB9IGZyb20gJy4vaW50ZXJuYWwnO1xudHlwZSBTa2lwRW1wdHlXb3JkPFdvcmQgZXh0ZW5kcyBzdHJpbmc+ID0gV29yZCBleHRlbmRzICcnID8gW10gOiBbV29yZF07XG50eXBlIFJlbW92ZUxhc3RDaGFyYWN0ZXI8U2VudGVuY2UgZXh0ZW5kcyBzdHJpbmcsIENoYXJhY3RlciBleHRlbmRzIHN0cmluZz4gPSBTZW50ZW5jZSBleHRlbmRzIGAke2luZmVyIExlZnRTaWRlfSR7Q2hhcmFjdGVyfWAgPyBTa2lwRW1wdHlXb3JkPExlZnRTaWRlPiA6IG5ldmVyO1xuLyoqXG4gKiBTcGxpdCBhIHN0cmluZyAoYWxtb3N0KSBsaWtlIExvZGFzaCdzIGBfLndvcmRzKClgIGZ1bmN0aW9uLlxuICpcbiAqIC0gU3BsaXQgb24gZWFjaCB3b3JkIHRoYXQgYmVnaW5zIHdpdGggYSBjYXBpdGFsIGxldHRlci5cbiAqIC0gU3BsaXQgb24gZWFjaCB7QGxpbmsgV29yZFNlcGFyYXRvcnN9LlxuICogLSBTcGxpdCBvbiBudW1lcmljIHNlcXVlbmNlLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBcbiAqIHR5cGUgV29yZHMwID0gU3BsaXRXb3JkczwnaGVsbG9Xb3JsZCc+OyAvLyBbJ2hlbGxvJywgJ1dvcmxkJ11cbiAqIHR5cGUgV29yZHMxID0gU3BsaXRXb3JkczwnaGVsbG9XT1JMRCc+OyAvLyBbJ2hlbGxvJywgJ1dPUkxEJ11cbiAqIHR5cGUgV29yZHMyID0gU3BsaXRXb3JkczwnaGVsbG8td29ybGQnPjsgLy8gWydoZWxsbycsICd3b3JsZCddXG4gKiB0eXBlIFdvcmRzMyA9IFNwbGl0V29yZHM8Jy0taGVsbG8gdGhlX3dvcmxkJz47IC8vIFsnaGVsbG8nLCAndGhlJywgJ3dvcmxkJ11cbiAqIHR5cGUgV29yZHM0ID0gU3BsaXRXb3JkczwnbGlmZUlzNDInPjsgLy8gWydsaWZlJywgJ0lzJywgJzQyJ11cbiAqIGBgYFxuICpcbiAqIEBpbnRlcm5hbFxuICogQGNhdGVnb3J5IENoYW5nZSBjYXNlXG4gKiBAY2F0ZWdvcnkgVGVtcGxhdGUgbGl0ZXJhbFxuICovXG5leHBvcnQgdHlwZSBTcGxpdFdvcmRzPFNlbnRlbmNlIGV4dGVuZHMgc3RyaW5nLCBMYXN0Q2hhcmFjdGVyIGV4dGVuZHMgc3RyaW5nID0gJycsIEN1cnJlbnRXb3JkIGV4dGVuZHMgc3RyaW5nID0gJyc+ID0gU2VudGVuY2UgZXh0ZW5kcyBgJHtpbmZlciBGaXJzdENoYXJhY3Rlcn0ke2luZmVyIFJlbWFpbmluZ0NoYXJhY3RlcnN9YCA/IEZpcnN0Q2hhcmFjdGVyIGV4dGVuZHMgV29yZFNlcGFyYXRvcnMgPyBbXG4gICAgLi4uU2tpcEVtcHR5V29yZDxDdXJyZW50V29yZD4sXG4gICAgLi4uU3BsaXRXb3JkczxSZW1haW5pbmdDaGFyYWN0ZXJzPlxuXSA6IExhc3RDaGFyYWN0ZXIgZXh0ZW5kcyAnJyA/IFNwbGl0V29yZHM8UmVtYWluaW5nQ2hhcmFjdGVycywgRmlyc3RDaGFyYWN0ZXIsIEZpcnN0Q2hhcmFjdGVyPiA6IFtcbiAgICBmYWxzZSxcbiAgICB0cnVlXG5dIGV4dGVuZHMgW0lzTnVtZXJpYzxMYXN0Q2hhcmFjdGVyPiwgSXNOdW1lcmljPEZpcnN0Q2hhcmFjdGVyPl0gPyBbXG4gICAgLi4uU2tpcEVtcHR5V29yZDxDdXJyZW50V29yZD4sXG4gICAgLi4uU3BsaXRXb3JkczxSZW1haW5pbmdDaGFyYWN0ZXJzLCBGaXJzdENoYXJhY3RlciwgRmlyc3RDaGFyYWN0ZXI+XG5dIDogW1xuICAgIHRydWUsXG4gICAgZmFsc2Vcbl0gZXh0ZW5kcyBbSXNOdW1lcmljPExhc3RDaGFyYWN0ZXI+LCBJc051bWVyaWM8Rmlyc3RDaGFyYWN0ZXI+XSA/IFtcbiAgICAuLi5Ta2lwRW1wdHlXb3JkPEN1cnJlbnRXb3JkPixcbiAgICAuLi5TcGxpdFdvcmRzPFJlbWFpbmluZ0NoYXJhY3RlcnMsIEZpcnN0Q2hhcmFjdGVyLCBGaXJzdENoYXJhY3Rlcj5cbl0gOiBbXG4gICAgdHJ1ZSxcbiAgICB0cnVlXG5dIGV4dGVuZHMgW0lzTnVtZXJpYzxMYXN0Q2hhcmFjdGVyPiwgSXNOdW1lcmljPEZpcnN0Q2hhcmFjdGVyPl0gPyBTcGxpdFdvcmRzPFJlbWFpbmluZ0NoYXJhY3RlcnMsIEZpcnN0Q2hhcmFjdGVyLCBgJHtDdXJyZW50V29yZH0ke0ZpcnN0Q2hhcmFjdGVyfWA+IDogW1xuICAgIHRydWUsXG4gICAgdHJ1ZVxuXSBleHRlbmRzIFtJc0xvd2VyQ2FzZTxMYXN0Q2hhcmFjdGVyPiwgSXNVcHBlckNhc2U8Rmlyc3RDaGFyYWN0ZXI+XSA/IFtcbiAgICAuLi5Ta2lwRW1wdHlXb3JkPEN1cnJlbnRXb3JkPixcbiAgICAuLi5TcGxpdFdvcmRzPFJlbWFpbmluZ0NoYXJhY3RlcnMsIEZpcnN0Q2hhcmFjdGVyLCBGaXJzdENoYXJhY3Rlcj5cbl0gOiBbXG4gICAgdHJ1ZSxcbiAgICB0cnVlXG5dIGV4dGVuZHMgW0lzVXBwZXJDYXNlPExhc3RDaGFyYWN0ZXI+LCBJc0xvd2VyQ2FzZTxGaXJzdENoYXJhY3Rlcj5dID8gW1xuICAgIC4uLlJlbW92ZUxhc3RDaGFyYWN0ZXI8Q3VycmVudFdvcmQsIExhc3RDaGFyYWN0ZXI+LFxuICAgIC4uLlNwbGl0V29yZHM8UmVtYWluaW5nQ2hhcmFjdGVycywgRmlyc3RDaGFyYWN0ZXIsIGAke0xhc3RDaGFyYWN0ZXJ9JHtGaXJzdENoYXJhY3Rlcn1gPlxuXSA6IFNwbGl0V29yZHM8UmVtYWluaW5nQ2hhcmFjdGVycywgRmlyc3RDaGFyYWN0ZXIsIGAke0N1cnJlbnRXb3JkfSR7Rmlyc3RDaGFyYWN0ZXJ9YD4gOiBbLi4uU2tpcEVtcHR5V29yZDxDdXJyZW50V29yZD5dO1xuZXhwb3J0IHt9O1xuIiwiaW1wb3J0IHsgU3BsaXRXb3JkcyB9IGZyb20gJy4vc3BsaXRXb3Jkcyc7XG4vKipcbiAqIENhbWVsQ2FzZSBvcHRpb25zLlxuICpcbiAqIEBzZWUge0BsaW5rIENhbWVsQ2FzZX1cbiAqL1xuZXhwb3J0IHR5cGUgQ2FtZWxDYXNlT3B0aW9ucyA9IHtcbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRvIHByZXNlcnZlZCBjb25zZWN1dGl2ZSB1cHBlcmNhc2UgbGV0dGVyLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIHByZXNlcnZlQ29uc2VjdXRpdmVVcHBlcmNhc2U/OiBib29sZWFuO1xufTtcbi8qKlxuICogQ29udmVydCBhbiBhcnJheSBvZiB3b3JkcyB0byBjYW1lbC1jYXNlLlxuICovXG50eXBlIENhbWVsQ2FzZUZyb21BcnJheTxXb3JkcyBleHRlbmRzIHN0cmluZ1tdLCBPcHRpb25zIGV4dGVuZHMgQ2FtZWxDYXNlT3B0aW9ucywgT3V0cHV0U3RyaW5nIGV4dGVuZHMgc3RyaW5nID0gJyc+ID0gV29yZHMgZXh0ZW5kcyBbaW5mZXIgRmlyc3RXb3JkIGV4dGVuZHMgc3RyaW5nLCAuLi5pbmZlciBSZW1haW5pbmdXb3JkcyBleHRlbmRzIHN0cmluZ1tdXSA/IE9wdGlvbnNbJ3ByZXNlcnZlQ29uc2VjdXRpdmVVcHBlcmNhc2UnXSBleHRlbmRzIHRydWUgPyBgJHtDYXBpdGFsaXplPEZpcnN0V29yZD59JHtDYW1lbENhc2VGcm9tQXJyYXk8UmVtYWluaW5nV29yZHMsIE9wdGlvbnM+fWAgOiBgJHtDYXBpdGFsaXplPExvd2VyY2FzZTxGaXJzdFdvcmQ+Pn0ke0NhbWVsQ2FzZUZyb21BcnJheTxSZW1haW5pbmdXb3JkcywgT3B0aW9ucz59YCA6IE91dHB1dFN0cmluZztcbi8qKlxuICogQ29udmVydCBhIHN0cmluZyBsaXRlcmFsIHRvIGNhbWVsLWNhc2UuXG4gKlxuICogVGhpcyBjYW4gYmUgdXNlZnVsIHdoZW4sIGZvciBleGFtcGxlLCBjb252ZXJ0aW5nIHNvbWUga2ViYWItY2FzZWQgY29tbWFuZC1saW5lIGZsYWdzIG9yIGEgc25ha2UtY2FzZWQgZGF0YWJhc2UgcmVzdWx0LlxuICpcbiAqIEJ5IGRlZmF1bHQsIGNvbnNlY3V0aXZlIHVwcGVyY2FzZSBsZXR0ZXIgYXJlIHByZXNlcnZlZC4gU2VlIHtAbGluayBDYW1lbENhc2VPcHRpb25zLnByZXNlcnZlQ29uc2VjdXRpdmVVcHBlcmNhc2UgcHJlc2VydmVDb25zZWN1dGl2ZVVwcGVyY2FzZX0gb3B0aW9uIHRvIGNoYW5nZSB0aGlzIGJlaGF2aW91ci5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgXG4gKiBpbXBvcnQgdHlwZSB7Q2FtZWxDYXNlfSBmcm9tICd0eXBlLWZlc3QnO1xuICpcbiAqIC8vIFNpbXBsZVxuICpcbiAqIGNvbnN0IHNvbWVWYXJpYWJsZTogQ2FtZWxDYXNlPCdmb28tYmFyJz4gPSAnZm9vQmFyJztcbiAqXG4gKiAvLyBBZHZhbmNlZFxuICpcbiAqIHR5cGUgQ2FtZWxDYXNlZFByb3BlcnRpZXM8VD4gPSB7XG4gKiBcdFtLIGluIGtleW9mIFQgYXMgQ2FtZWxDYXNlPEs+XTogVFtLXVxuICogfTtcbiAqXG4gKiBpbnRlcmZhY2UgUmF3T3B0aW9ucyB7XG4gKiBcdCdkcnktcnVuJzogYm9vbGVhbjtcbiAqIFx0J2Z1bGxfZmFtaWx5X25hbWUnOiBzdHJpbmc7XG4gKiBcdGZvbzogbnVtYmVyO1xuICogXHRCQVI6IHN0cmluZztcbiAqIFx0UVVaX1FVWDogbnVtYmVyO1xuICogXHQnT1RIRVItRklFTEQnOiBib29sZWFuO1xuICogfVxuICpcbiAqIGNvbnN0IGRiUmVzdWx0OiBDYW1lbENhc2VkUHJvcGVydGllczxSYXdPcHRpb25zPiA9IHtcbiAqIFx0ZHJ5UnVuOiB0cnVlLFxuICogXHRmdWxsRmFtaWx5TmFtZTogJ2Jhci5qcycsXG4gKiBcdGZvbzogMTIzLFxuICogXHRiYXI6ICdmb28nLFxuICogXHRxdXpRdXg6IDYsXG4gKiBcdG90aGVyRmllbGQ6IGZhbHNlXG4gKiB9O1xuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IENoYW5nZSBjYXNlXG4gKiBAY2F0ZWdvcnkgVGVtcGxhdGUgbGl0ZXJhbFxuICovXG5leHBvcnQgdHlwZSBDYW1lbENhc2U8VHlwZSwgT3B0aW9ucyBleHRlbmRzIENhbWVsQ2FzZU9wdGlvbnMgPSB7XG4gICAgcHJlc2VydmVDb25zZWN1dGl2ZVVwcGVyY2FzZTogdHJ1ZTtcbn0+ID0gVHlwZSBleHRlbmRzIHN0cmluZyA/IHN0cmluZyBleHRlbmRzIFR5cGUgPyBUeXBlIDogVW5jYXBpdGFsaXplPENhbWVsQ2FzZUZyb21BcnJheTxTcGxpdFdvcmRzPFR5cGUgZXh0ZW5kcyBVcHBlcmNhc2U8VHlwZT4gPyBMb3dlcmNhc2U8VHlwZT4gOiBUeXBlPiwgT3B0aW9ucz4+IDogVHlwZTtcbmV4cG9ydCB7fTtcbiIsIi8qKlxuICogUmVwcmVzZW50cyBhbiBhcnJheSB3aXRoIGB1bmtub3duYCB2YWx1ZS5cbiAqXG4gKiBVc2UgY2FzZTogWW91IHdhbnQgYSB0eXBlIHRoYXQgYWxsIGFycmF5cyBjYW4gYmUgYXNzaWduZWQgdG8sIGJ1dCB5b3UgZG9uJ3QgY2FyZSBhYm91dCB0aGUgdmFsdWUuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYFxuICogaW1wb3J0IHR5cGUge1Vua25vd25BcnJheX0gZnJvbSAndHlwZS1mZXN0JztcbiAqXG4gKiB0eXBlIElzQXJyYXk8VD4gPSBUIGV4dGVuZHMgVW5rbm93bkFycmF5ID8gdHJ1ZSA6IGZhbHNlO1xuICpcbiAqIHR5cGUgQSA9IElzQXJyYXk8Wydmb28nXT47XG4gKiAvLz0+IHRydWVcbiAqXG4gKiB0eXBlIEIgPSBJc0FycmF5PHJlYWRvbmx5IG51bWJlcltdPjtcbiAqIC8vPT4gdHJ1ZVxuICpcbiAqIHR5cGUgQyA9IElzQXJyYXk8c3RyaW5nPjtcbiAqIC8vPT4gZmFsc2VcbiAqIGBgYFxuICpcbiAqIEBjYXRlZ29yeSBUeXBlXG4gKiBAY2F0ZWdvcnkgQXJyYXlcbiAqL1xuZXhwb3J0IHR5cGUgVW5rbm93bkFycmF5ID0gcmVhZG9ubHkgdW5rbm93bltdO1xuIiwiaW1wb3J0IHsgQ2FtZWxDYXNlLCBDYW1lbENhc2VPcHRpb25zIH0gZnJvbSAnLi9jYW1lbENhc2UnO1xuaW1wb3J0IHsgVW5rbm93bkFycmF5IH0gZnJvbSAnLi91bmtub3duQXJyYXknO1xuLyoqXG4gKiBDb252ZXJ0IG9iamVjdCBwcm9wZXJ0aWVzIHRvIGNhbWVsIGNhc2UgcmVjdXJzaXZlbHkuXG4gKlxuICogVGhpcyBjYW4gYmUgdXNlZnVsIHdoZW4sIGZvciBleGFtcGxlLCBjb252ZXJ0aW5nIHNvbWUgQVBJIHR5cGVzIGZyb20gYSBkaWZmZXJlbnQgc3R5bGUuXG4gKlxuICogQHNlZSBDYW1lbENhc2VkUHJvcGVydGllc1xuICogQHNlZSBDYW1lbENhc2VcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgXG4gKiBpbXBvcnQgdHlwZSB7Q2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwfSBmcm9tICd0eXBlLWZlc3QnO1xuICpcbiAqIGludGVyZmFjZSBVc2VyIHtcbiAqIFx0VXNlcklkOiBudW1iZXI7XG4gKiBcdFVzZXJOYW1lOiBzdHJpbmc7XG4gKiB9XG4gKlxuICogaW50ZXJmYWNlIFVzZXJXaXRoRnJpZW5kcyB7XG4gKiBcdFVzZXJJbmZvOiBVc2VyO1xuICogXHRVc2VyRnJpZW5kczogVXNlcltdO1xuICogfVxuICpcbiAqIGNvbnN0IHJlc3VsdDogQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPFVzZXJXaXRoRnJpZW5kcz4gPSB7XG4gKiBcdHVzZXJJbmZvOiB7XG4gKiBcdFx0dXNlcklkOiAxLFxuICogXHRcdHVzZXJOYW1lOiAnVG9tJyxcbiAqIFx0fSxcbiAqIFx0dXNlckZyaWVuZHM6IFtcbiAqIFx0XHR7XG4gKiBcdFx0XHR1c2VySWQ6IDIsXG4gKiBcdFx0XHR1c2VyTmFtZTogJ0plcnJ5JyxcbiAqIFx0XHR9LFxuICogXHRcdHtcbiAqIFx0XHRcdHVzZXJJZDogMyxcbiAqIFx0XHRcdHVzZXJOYW1lOiAnU3Bpa2UnLFxuICogXHRcdH0sXG4gKiBcdF0sXG4gKiB9O1xuICogYGBgXG4gKlxuICogQGNhdGVnb3J5IENoYW5nZSBjYXNlXG4gKiBAY2F0ZWdvcnkgVGVtcGxhdGUgbGl0ZXJhbFxuICogQGNhdGVnb3J5IE9iamVjdFxuICovXG5leHBvcnQgdHlwZSBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8VmFsdWUsIE9wdGlvbnMgZXh0ZW5kcyBDYW1lbENhc2VPcHRpb25zID0ge1xuICAgIHByZXNlcnZlQ29uc2VjdXRpdmVVcHBlcmNhc2U6IHRydWU7XG59PiA9IFZhbHVlIGV4dGVuZHMgRnVuY3Rpb24gPyBWYWx1ZSA6IFZhbHVlIGV4dGVuZHMgVW5rbm93bkFycmF5ID8gQ2FtZWxDYXNlZFByb3BlcnRpZXNBcnJheURlZXA8VmFsdWU+IDogVmFsdWUgZXh0ZW5kcyBTZXQ8aW5mZXIgVT4gPyBTZXQ8Q2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPFUsIE9wdGlvbnM+PiA6IHtcbiAgICBbSyBpbiBrZXlvZiBWYWx1ZSBhcyBDYW1lbENhc2U8SywgT3B0aW9ucz5dOiBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8VmFsdWVbS10sIE9wdGlvbnM+O1xufTtcbnR5cGUgQ2FtZWxDYXNlZFByb3BlcnRpZXNBcnJheURlZXA8VmFsdWUgZXh0ZW5kcyBVbmtub3duQXJyYXk+ID0gVmFsdWUgZXh0ZW5kcyBbXSA/IFtdIDogVmFsdWUgZXh0ZW5kcyBbaW5mZXIgVSwgLi4uaW5mZXIgVl0gPyBbQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPFU+LCAuLi5DYW1lbENhc2VkUHJvcGVydGllc0RlZXA8Vj5dIDogVmFsdWUgZXh0ZW5kcyByZWFkb25seSBbaW5mZXIgVSwgLi4uaW5mZXIgVl0gPyByZWFkb25seSBbQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPFU+LCAuLi5DYW1lbENhc2VkUHJvcGVydGllc0RlZXA8Vj5dIDogVmFsdWUgZXh0ZW5kcyByZWFkb25seSBbLi4uaW5mZXIgVSwgaW5mZXIgVl0gPyBbLi4uQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPFU+LCBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8Vj5dIDogVmFsdWUgZXh0ZW5kcyByZWFkb25seSBbLi4uaW5mZXIgVSwgaW5mZXIgVl0gPyByZWFkb25seSBbLi4uQ2FtZWxDYXNlZFByb3BlcnRpZXNEZWVwPFU+LCBDYW1lbENhc2VkUHJvcGVydGllc0RlZXA8Vj5dIDogVmFsdWUgZXh0ZW5kcyBBcnJheTxpbmZlciBVPiA/IEFycmF5PENhbWVsQ2FzZWRQcm9wZXJ0aWVzRGVlcDxVPj4gOiBWYWx1ZSBleHRlbmRzIFJlYWRvbmx5QXJyYXk8aW5mZXIgVT4gPyBSZWFkb25seUFycmF5PENhbWVsQ2FzZWRQcm9wZXJ0aWVzRGVlcDxVPj4gOiBuZXZlcjtcbmV4cG9ydCB7fTtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBLElBQUUsWUFBQSxDQUFBLElBQUE7Ozs7QUNDRixJQUFFLFdBQUE7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNGLElBQUksWUFBWTtDQUFDO09BQVc7T0FBTztPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ25DLElBQUUsT0FBQTtDQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7Ozs7QUNERixJQUFFLFdBQUE7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ0YsSUFBVyxtQkFBbUI7Q0FBQztPQUFXO09BQWdCO0NBQUM7QUFDM0QsSUFBRSxZQUFBO0NBQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ0YsSUFBVyxjQUFjO0NBQUM7T0FBVztPQUFTO09BQVM7Q0FBQTtBQUN2RCxJQUFFLGNBQUE7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ0YsSUFBVyxpQkFBaUIsQ0FBQyxXQUFDLFdBQUE7QUFDOUIsSUFBRSxhQUFBLENBQUEsSUFBQTtBQUNGLElBQVcsc0JBQXNCLENBQUMsSUFBSTs7OztBQ1J0QyxJQUFJLGdCQUFnQjtDQUFDO09BQVc7T0FBWTtDQUFLO0FBQ2pELElBQUksc0JBQXNCO0NBQUM7T0FBVztPQUFnQjtPQUFpQjtPQUFnQjtDQUFjO0FBQ3JHLElBQUUsYUFBQTtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTs7OztBQ0ZGLElBQUUsbUJBQUEsQ0FBQSxJQUFBO0FBQ0YsSUFBSSxxQkFBZ0I7Q0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ3BCLElBQUMsWUFBQTtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7Ozs7QUNIRCxJQUFFLGVBQUEsQ0FBQSxJQUFBOzs7O0FDRUYsSUFBRSwyQkFBQTtDQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7Q0FBQTtBQUNGLElBQUksZ0NBQWdDO0NBQUM7T0FBVztPQUFNO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUEifQ==
@@ -1 +0,0 @@
1
- export {};
@@ -1,39 +0,0 @@
1
- import { PageVisitCategory } from "@spiffy-ai/commerce-api-client";
2
-
3
- //#region src/application/models/variantInfo/plpInfo.d.ts
4
- interface PLPInfo {
5
- plpId: string;
6
- }
7
- //#endregion
8
- //#region src/application/models/variantInfo/pageVisitInfo.d.ts
9
- interface PageVisitInfo {
10
- url: string;
11
- pageVisitCategory: PageVisitCategory;
12
- }
13
- //#endregion
14
- //#region src/application/models/variantInfo/productInfo.d.ts
15
- interface ProductInfo {
16
- productId: string;
17
- parentProductId?: string;
18
- url?: string;
19
- }
20
- //#endregion
21
- //#region src/application/models/variantInfo/variantInfo.d.ts
22
- type VariantType = 'pdp' | 'plp' | 'page_visit';
23
- type VariantInfo = PDPVariantInfo | PLPVariantInfo | PageVisitVariantInfo;
24
- type PDPVariantInfo = {
25
- variantId: string;
26
- variant: 'pdp';
27
- } & ProductInfo;
28
- type PLPVariantInfo = {
29
- variantId: string;
30
- variant: 'plp';
31
- url?: string;
32
- } & PLPInfo;
33
- type PageVisitVariantInfo = {
34
- variantId: string;
35
- variant: 'page_visit';
36
- } & PageVisitInfo;
37
- //#endregion
38
- export { PDPVariantInfo, PLPInfo, PLPVariantInfo, PageVisitInfo, PageVisitVariantInfo, ProductInfo, VariantInfo, VariantType };
39
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXgtaGRiQ0VqWXkuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vc3JjL2FwcGxpY2F0aW9uL21vZGVscy92YXJpYW50SW5mby9wbHBJbmZvLmQudHMiLCIuLi9zcmMvYXBwbGljYXRpb24vbW9kZWxzL3ZhcmlhbnRJbmZvL3BhZ2VWaXNpdEluZm8uZC50cyIsIi4uL3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvdmFyaWFudEluZm8vcHJvZHVjdEluZm8uZC50cyIsIi4uL3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvdmFyaWFudEluZm8vdmFyaWFudEluZm8uZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFBMUEluZm8ge1xuICAgIHBscElkOiBzdHJpbmc7XG59XG4iLCJpbXBvcnQgeyBQYWdlVmlzaXRDYXRlZ29yeSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VWaXNpdEluZm8ge1xuICAgIHVybDogc3RyaW5nO1xuICAgIHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeTtcbn1cbiIsImV4cG9ydCBpbnRlcmZhY2UgUHJvZHVjdEluZm8ge1xuICAgIHByb2R1Y3RJZDogc3RyaW5nO1xuICAgIHBhcmVudFByb2R1Y3RJZD86IHN0cmluZztcbiAgICB1cmw/OiBzdHJpbmc7XG59XG4iLCJpbXBvcnQgeyBQTFBJbmZvIH0gZnJvbSAnLi9wbHBJbmZvJztcbmltcG9ydCB7IFBhZ2VWaXNpdEluZm8gfSBmcm9tICcuL3BhZ2VWaXNpdEluZm8nO1xuaW1wb3J0IHsgUHJvZHVjdEluZm8gfSBmcm9tICcuL3Byb2R1Y3RJbmZvJztcbmV4cG9ydCB0eXBlIFZhcmlhbnRUeXBlID0gJ3BkcCcgfCAncGxwJyB8ICdwYWdlX3Zpc2l0JztcbmV4cG9ydCB0eXBlIFZhcmlhbnRJbmZvID0gUERQVmFyaWFudEluZm8gfCBQTFBWYXJpYW50SW5mbyB8IFBhZ2VWaXNpdFZhcmlhbnRJbmZvO1xuZXhwb3J0IHR5cGUgUERQVmFyaWFudEluZm8gPSB7XG4gICAgdmFyaWFudElkOiBzdHJpbmc7XG4gICAgdmFyaWFudDogJ3BkcCc7XG59ICYgUHJvZHVjdEluZm87XG5leHBvcnQgdHlwZSBQTFBWYXJpYW50SW5mbyA9IHtcbiAgICB2YXJpYW50SWQ6IHN0cmluZztcbiAgICB2YXJpYW50OiAncGxwJztcbiAgICB1cmw/OiBzdHJpbmc7XG59ICYgUExQSW5mbztcbmV4cG9ydCB0eXBlIFBhZ2VWaXNpdFZhcmlhbnRJbmZvID0ge1xuICAgIHZhcmlhbnRJZDogc3RyaW5nO1xuICAgIHZhcmlhbnQ6ICdwYWdlX3Zpc2l0Jztcbn0gJiBQYWdlVmlzaXRJbmZvO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFBQSxJQUFXLFVBQVUsQ0FBQyxJQUFHOzs7O0FDQ3pCLElBQVcsZ0JBQWdCLENBQUMsV0FBRyxrQkFBQTs7OztBQ0QvQixJQUFXLGNBQWMsQ0FBQyxJQUFHOzs7O0FDRzdCLElBQVcsY0FBYyxDQUFDLElBQUk7QUFDOUIsSUFBVyxjQUFjO0NBQUM7T0FBVztPQUFzQjtPQUFxQjtDQUFBO0FBQ2hGLElBQVcsaUJBQWlCLENBQUMsV0FBQSxZQUFBO0FBQzdCLElBQVcsaUJBQVUsQ0FBQSxXQUFBLFFBQUE7QUFDckIsSUFBVyx1QkFBTyxDQUFBLFdBQUEsY0FBQSJ9
@@ -1,4 +0,0 @@
1
- require('../types-a8gm_IaQ.cjs');
2
- const require_useMessageInterceptor = require('../useMessageInterceptor-CstX10ih.cjs');
3
-
4
- exports.useMessageInterceptor = require_useMessageInterceptor.useMessageInterceptor;
@@ -1,20 +0,0 @@
1
- import "../index-Bmub8e38.cjs";
2
- import { Response } from "../index-CiWEYzXl.cjs";
3
- import "../index-CESxqFso.cjs";
4
- import "../utils-B3x_9JTY.cjs";
5
- import "../index-C_MIfxF0.cjs";
6
- import "../chatElementDisplayLocation-DWmfNX_u.cjs";
7
- import "../frontendConfig-DnMZfvcA.cjs";
8
- import "../test-types-ThQiO_cc.cjs";
9
- import "../spiffyWidgets-BuS00VaQ.cjs";
10
- import "../search-y-ioX5Mz.cjs";
11
- import "../index-hdbCEjYy.cjs";
12
- import { MessageInterceptor } from "../types-D4aa7_7x.cjs";
13
-
14
- //#region src/interceptors/useMessageInterceptor.d.ts
15
- declare const useMessageInterceptor: () => {
16
- intercept: (response?: Response) => boolean | undefined;
17
- };
18
- //#endregion
19
- export { MessageInterceptor, useMessageInterceptor };
20
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ludGVyY2VwdG9ycy91c2VNZXNzYWdlSW50ZXJjZXB0b3IuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZXNwb25zZSB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzXCI7XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VNZXNzYWdlSW50ZXJjZXB0b3I6ICgpID0+IHtcbiAgICBpbnRlcmNlcHQ6IChyZXNwb25zZT86IFJlc3BvbnNlKSA9PiBib29sZWFuIHwgdW5kZWZpbmVkO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFDQSxJQUFXLHdCQUF3QixDQUFDLFdBQVcsU0FBRyJ9
@@ -1,20 +0,0 @@
1
- import "../index-Dr_c2DDq.js";
2
- import { Response } from "../index-BN-3ctk_.js";
3
- import "../index-DsiilEj-.js";
4
- import "../utils-B1xLx9S8.js";
5
- import "../index-CK_J3QMY.js";
6
- import "../chatElementDisplayLocation-BwiXrkN7.js";
7
- import "../frontendConfig-Dqxbqo8G.js";
8
- import "../test-types-EzMFw_U3.js";
9
- import "../spiffyWidgets-GILaqHv6.js";
10
- import "../search-BLShhjvR.js";
11
- import "../index-BoYC9XLW.js";
12
- import { MessageInterceptor } from "../types-6siNDmGv.js";
13
-
14
- //#region src/interceptors/useMessageInterceptor.d.ts
15
- declare const useMessageInterceptor: () => {
16
- intercept: (response?: Response) => boolean | undefined;
17
- };
18
- //#endregion
19
- export { MessageInterceptor, useMessageInterceptor };
20
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJjZXB0b3JzL3VzZU1lc3NhZ2VJbnRlcmNlcHRvci5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlc3BvbnNlIH0gZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9tb2RlbHNcIjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZU1lc3NhZ2VJbnRlcmNlcHRvcjogKCkgPT4ge1xuICAgIGludGVyY2VwdDogKHJlc3BvbnNlPzogUmVzcG9uc2UpID0+IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUNBLElBQVcsd0JBQXdCLENBQUMsV0FBVyxTQUFHIn0=
@@ -1,4 +0,0 @@
1
- import "../types-DtTnp0o0.js";
2
- import { useMessageInterceptor } from "../useMessageInterceptor-D5oAekXn.js";
3
-
4
- export { useMessageInterceptor };
@@ -1 +0,0 @@
1
- require('../types-a8gm_IaQ.cjs');
@@ -1,13 +0,0 @@
1
- import "../index-Bmub8e38.cjs";
2
- import "../index-CiWEYzXl.cjs";
3
- import "../index-CESxqFso.cjs";
4
- import "../utils-B3x_9JTY.cjs";
5
- import "../index-C_MIfxF0.cjs";
6
- import "../chatElementDisplayLocation-DWmfNX_u.cjs";
7
- import "../frontendConfig-DnMZfvcA.cjs";
8
- import "../test-types-ThQiO_cc.cjs";
9
- import "../spiffyWidgets-BuS00VaQ.cjs";
10
- import "../search-y-ioX5Mz.cjs";
11
- import "../index-hdbCEjYy.cjs";
12
- import { MessageInterceptor } from "../types-D4aa7_7x.cjs";
13
- export { MessageInterceptor };
@@ -1,13 +0,0 @@
1
- import "../index-Dr_c2DDq.js";
2
- import "../index-BN-3ctk_.js";
3
- import "../index-DsiilEj-.js";
4
- import "../utils-B1xLx9S8.js";
5
- import "../index-CK_J3QMY.js";
6
- import "../chatElementDisplayLocation-BwiXrkN7.js";
7
- import "../frontendConfig-Dqxbqo8G.js";
8
- import "../test-types-EzMFw_U3.js";
9
- import "../spiffyWidgets-GILaqHv6.js";
10
- import "../search-BLShhjvR.js";
11
- import "../index-BoYC9XLW.js";
12
- import { MessageInterceptor } from "../types-6siNDmGv.js";
13
- export { MessageInterceptor };
@@ -1,3 +0,0 @@
1
- import "../types-DtTnp0o0.js";
2
-
3
- export { };
@@ -1,95 +0,0 @@
1
- import { logger_default } from "./logger-oAgZx2-m.js";
2
- import React, { createContext, useCallback, useContext, useEffect, useMemo } from "react";
3
- import { jsx } from "react/jsx-runtime";
4
-
5
- //#region src/contexts/localStorageContext/localStorageContext.tsx
6
- let LocalStorageKeys = /* @__PURE__ */ function(LocalStorageKeys$1) {
7
- LocalStorageKeys$1["ChatId"] = "v1-spiffy-chat-session-id";
8
- LocalStorageKeys$1["SpiffyOnOverride"] = "spiffy_on";
9
- LocalStorageKeys$1["EnviveOnOverride"] = "envive_on";
10
- return LocalStorageKeys$1;
11
- }({});
12
- const LocalStorageContext = createContext(null);
13
- const LocalStorageProvider = ({ children }) => {
14
- const isAvailable = useMemo(() => {
15
- try {
16
- return typeof window !== "undefined" && !!window.localStorage;
17
- } catch {
18
- return false;
19
- }
20
- }, []);
21
- useEffect(() => {
22
- if (!isAvailable) logger_default.logError("localStorage is not available", void 0);
23
- }, [isAvailable]);
24
- const setItem = useCallback((key, value$1) => {
25
- if (!isAvailable) return;
26
- localStorage.setItem(key, value$1);
27
- window.dispatchEvent(new StorageEvent("storage", {
28
- key,
29
- newValue: value$1
30
- }));
31
- }, [isAvailable]);
32
- const getItem = useCallback((key) => {
33
- if (!isAvailable) return null;
34
- return localStorage.getItem(key);
35
- }, [isAvailable]);
36
- const setSpiffyOnFeatureFlag = useCallback((value$1) => {
37
- if (!isAvailable) return;
38
- if (value$1 === true) localStorage.setItem(LocalStorageKeys.SpiffyOnOverride, "true");
39
- else if (value$1 === false) localStorage.setItem(LocalStorageKeys.SpiffyOnOverride, "false");
40
- }, [isAvailable]);
41
- const getSpiffyOnFeatureFlag = useCallback(() => {
42
- if (!isAvailable) return null;
43
- return localStorage.getItem(LocalStorageKeys.SpiffyOnOverride);
44
- }, [isAvailable]);
45
- const listenersCache = useMemo(() => /* @__PURE__ */ new Map(), []);
46
- const listenerForKey = useCallback((listener) => {
47
- if (!listenersCache.has(listener.storageKey)) {
48
- const handler = (event) => {
49
- if (event.key !== listener.storageKey) return;
50
- logger_default.logDebug(`[spiffy-ai] Storage event key=${event.key}, value=`, event.newValue);
51
- listener.listener(event);
52
- };
53
- listenersCache.set(listener.storageKey, handler);
54
- }
55
- return listenersCache.get(listener.storageKey);
56
- }, [listenersCache]);
57
- const attachListener = useCallback((listener) => {
58
- if (!isAvailable) return;
59
- window.addEventListener("storage", listenerForKey(listener));
60
- }, [isAvailable, listenerForKey]);
61
- const detachListener = useCallback((listener) => {
62
- if (!isAvailable) return;
63
- window.removeEventListener("storage", listenerForKey(listener));
64
- }, [isAvailable, listenerForKey]);
65
- const value = useMemo(() => ({
66
- setItem,
67
- getItem,
68
- setSpiffyOnFeatureFlag,
69
- getSpiffyOnFeatureFlag,
70
- attachListener,
71
- detachListener,
72
- isAvailable
73
- }), [
74
- setItem,
75
- getItem,
76
- setSpiffyOnFeatureFlag,
77
- getSpiffyOnFeatureFlag,
78
- attachListener,
79
- detachListener,
80
- isAvailable
81
- ]);
82
- return /* @__PURE__ */ jsx(LocalStorageContext.Provider, {
83
- value,
84
- children
85
- });
86
- };
87
- const useLocalStorage = () => {
88
- const context = useContext(LocalStorageContext);
89
- if (!context) throw new Error("useLocalStorage must be used within a LocalStorageProvider");
90
- return context;
91
- };
92
-
93
- //#endregion
94
- export { LocalStorageKeys, LocalStorageProvider, useLocalStorage };
95
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxTdG9yYWdlQ29udGV4dC1Ed2d0bzkzXy5qcyIsIm5hbWVzIjpbIkxvY2FsU3RvcmFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfT4iLCJ2YWx1ZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb250ZXh0cy9sb2NhbFN0b3JhZ2VDb250ZXh0L2xvY2FsU3RvcmFnZUNvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBjcmVhdGVDb250ZXh0LFxuICB1c2VDb250ZXh0LFxuICB1c2VDYWxsYmFjayxcbiAgdXNlTWVtbyxcbiAgdXNlRWZmZWN0LFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBMb2dnZXIgZnJvbSBcInNyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlclwiO1xuaW1wb3J0IHsgTG9jYWxTdG9yYWdlRXZlbnRMaXN0ZW5lciB9IGZyb20gXCJzcmMvYXBwbGljYXRpb24vbW9kZWxzL2xvY2FsU3RvcmFnZUV2ZW50TGlzdGVuZXJcIjtcblxuZXhwb3J0IGVudW0gTG9jYWxTdG9yYWdlS2V5cyB7XG4gIENoYXRJZCA9IFwidjEtc3BpZmZ5LWNoYXQtc2Vzc2lvbi1pZFwiLFxuICBTcGlmZnlPbk92ZXJyaWRlID0gXCJzcGlmZnlfb25cIixcbiAgRW52aXZlT25PdmVycmlkZSA9IFwiZW52aXZlX29uXCIsXG59XG5cbmludGVyZmFjZSBMb2NhbFN0b3JhZ2VDb250ZXh0VHlwZSB7XG4gIHNldEl0ZW06IChrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZykgPT4gdm9pZDtcbiAgZ2V0SXRlbTogKGtleTogc3RyaW5nKSA9PiBzdHJpbmcgfCBudWxsO1xuICBzZXRTcGlmZnlPbkZlYXR1cmVGbGFnOiAodmFsdWU6IGJvb2xlYW4gfCBudWxsKSA9PiB2b2lkO1xuICBnZXRTcGlmZnlPbkZlYXR1cmVGbGFnOiAoKSA9PiBzdHJpbmcgfCBudWxsO1xuICBhdHRhY2hMaXN0ZW5lcjogKGxpc3RlbmVyOiBMb2NhbFN0b3JhZ2VFdmVudExpc3RlbmVyKSA9PiB2b2lkO1xuICBkZXRhY2hMaXN0ZW5lcjogKGxpc3RlbmVyOiBMb2NhbFN0b3JhZ2VFdmVudExpc3RlbmVyKSA9PiB2b2lkO1xuICBpc0F2YWlsYWJsZTogYm9vbGVhbjtcbn1cblxuY29uc3QgTG9jYWxTdG9yYWdlQ29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8TG9jYWxTdG9yYWdlQ29udGV4dFR5cGUgfCBudWxsPihudWxsKTtcblxuZXhwb3J0IGNvbnN0IExvY2FsU3RvcmFnZVByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGUgfT4gPSAoe1xuICBjaGlsZHJlbixcbn0pID0+IHtcbiAgY29uc3QgaXNBdmFpbGFibGUgPSB1c2VNZW1vKCgpID0+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHR5cGVvZiB3aW5kb3cgIT09IFwidW5kZWZpbmVkXCIgJiYgISF3aW5kb3cubG9jYWxTdG9yYWdlO1xuICAgIH0gY2F0Y2gge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfSwgW10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFpc0F2YWlsYWJsZSkge1xuICAgICAgTG9nZ2VyLmxvZ0Vycm9yKFwibG9jYWxTdG9yYWdlIGlzIG5vdCBhdmFpbGFibGVcIiwgdW5kZWZpbmVkKTtcbiAgICB9XG4gIH0sIFtpc0F2YWlsYWJsZV0pO1xuXG4gIGNvbnN0IHNldEl0ZW0gPSB1c2VDYWxsYmFjayhcbiAgICAoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgIGlmICghaXNBdmFpbGFibGUpIHJldHVybjtcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKGtleSwgdmFsdWUpO1xuICAgICAgd2luZG93LmRpc3BhdGNoRXZlbnQoXG4gICAgICAgIG5ldyBTdG9yYWdlRXZlbnQoXCJzdG9yYWdlXCIsIHsga2V5LCBuZXdWYWx1ZTogdmFsdWUgfSlcbiAgICAgICk7XG4gICAgfSxcbiAgICBbaXNBdmFpbGFibGVdXG4gICk7XG5cbiAgY29uc3QgZ2V0SXRlbSA9IHVzZUNhbGxiYWNrKFxuICAgIChrZXk6IHN0cmluZykgPT4ge1xuICAgICAgaWYgKCFpc0F2YWlsYWJsZSkgcmV0dXJuIG51bGw7XG4gICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oa2V5KTtcbiAgICB9LFxuICAgIFtpc0F2YWlsYWJsZV1cbiAgKTtcblxuICBjb25zdCBzZXRTcGlmZnlPbkZlYXR1cmVGbGFnID0gdXNlQ2FsbGJhY2soXG4gICAgKHZhbHVlOiBib29sZWFuIHwgbnVsbCk6IHZvaWQgPT4ge1xuICAgICAgaWYgKCFpc0F2YWlsYWJsZSkgcmV0dXJuO1xuICAgICAgaWYgKHZhbHVlID09PSB0cnVlKSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKExvY2FsU3RvcmFnZUtleXMuU3BpZmZ5T25PdmVycmlkZSwgXCJ0cnVlXCIpO1xuICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PT0gZmFsc2UpIHtcbiAgICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oTG9jYWxTdG9yYWdlS2V5cy5TcGlmZnlPbk92ZXJyaWRlLCBcImZhbHNlXCIpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2lzQXZhaWxhYmxlXVxuICApO1xuXG4gIGNvbnN0IGdldFNwaWZmeU9uRmVhdHVyZUZsYWcgPSB1c2VDYWxsYmFjaygoKTogc3RyaW5nIHwgbnVsbCA9PiB7XG4gICAgaWYgKCFpc0F2YWlsYWJsZSkgcmV0dXJuIG51bGw7XG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKExvY2FsU3RvcmFnZUtleXMuU3BpZmZ5T25PdmVycmlkZSk7XG4gIH0sIFtpc0F2YWlsYWJsZV0pO1xuXG4gIGNvbnN0IGxpc3RlbmVyc0NhY2hlID0gdXNlTWVtbyhcbiAgICAoKSA9PiBuZXcgTWFwPHN0cmluZywgKGV2ZW50OiBTdG9yYWdlRXZlbnQpID0+IHZvaWQ+KCksXG4gICAgW11cbiAgKTtcblxuICBjb25zdCBsaXN0ZW5lckZvcktleSA9IHVzZUNhbGxiYWNrKFxuICAgIChsaXN0ZW5lcjogTG9jYWxTdG9yYWdlRXZlbnRMaXN0ZW5lcik6ICgoZXZlbnQ6IFN0b3JhZ2VFdmVudCkgPT4gdm9pZCkgPT4ge1xuICAgICAgaWYgKCFsaXN0ZW5lcnNDYWNoZS5oYXMobGlzdGVuZXIuc3RvcmFnZUtleSkpIHtcbiAgICAgICAgY29uc3QgaGFuZGxlciA9IChldmVudDogU3RvcmFnZUV2ZW50KSA9PiB7XG4gICAgICAgICAgaWYgKGV2ZW50LmtleSAhPT0gbGlzdGVuZXIuc3RvcmFnZUtleSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBMb2dnZXIubG9nRGVidWcoXG4gICAgICAgICAgICBgW3NwaWZmeS1haV0gU3RvcmFnZSBldmVudCBrZXk9JHtldmVudC5rZXl9LCB2YWx1ZT1gLFxuICAgICAgICAgICAgZXZlbnQubmV3VmFsdWVcbiAgICAgICAgICApO1xuICAgICAgICAgIGxpc3RlbmVyLmxpc3RlbmVyKGV2ZW50KTtcbiAgICAgICAgfTtcbiAgICAgICAgbGlzdGVuZXJzQ2FjaGUuc2V0KGxpc3RlbmVyLnN0b3JhZ2VLZXksIGhhbmRsZXIpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGxpc3RlbmVyc0NhY2hlLmdldChsaXN0ZW5lci5zdG9yYWdlS2V5KSE7XG4gICAgfSxcbiAgICBbbGlzdGVuZXJzQ2FjaGVdXG4gICk7XG5cbiAgY29uc3QgYXR0YWNoTGlzdGVuZXIgPSB1c2VDYWxsYmFjayhcbiAgICAobGlzdGVuZXI6IExvY2FsU3RvcmFnZUV2ZW50TGlzdGVuZXIpOiB2b2lkID0+IHtcbiAgICAgIGlmICghaXNBdmFpbGFibGUpIHJldHVybjtcbiAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKFwic3RvcmFnZVwiLCBsaXN0ZW5lckZvcktleShsaXN0ZW5lcikpO1xuICAgIH0sXG4gICAgW2lzQXZhaWxhYmxlLCBsaXN0ZW5lckZvcktleV1cbiAgKTtcblxuICBjb25zdCBkZXRhY2hMaXN0ZW5lciA9IHVzZUNhbGxiYWNrKFxuICAgIChsaXN0ZW5lcjogTG9jYWxTdG9yYWdlRXZlbnRMaXN0ZW5lcik6IHZvaWQgPT4ge1xuICAgICAgaWYgKCFpc0F2YWlsYWJsZSkgcmV0dXJuO1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoXCJzdG9yYWdlXCIsIGxpc3RlbmVyRm9yS2V5KGxpc3RlbmVyKSk7XG4gICAgfSxcbiAgICBbaXNBdmFpbGFibGUsIGxpc3RlbmVyRm9yS2V5XVxuICApO1xuXG4gIGNvbnN0IHZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PiAoe1xuICAgICAgc2V0SXRlbSxcbiAgICAgIGdldEl0ZW0sXG4gICAgICBzZXRTcGlmZnlPbkZlYXR1cmVGbGFnLFxuICAgICAgZ2V0U3BpZmZ5T25GZWF0dXJlRmxhZyxcbiAgICAgIGF0dGFjaExpc3RlbmVyLFxuICAgICAgZGV0YWNoTGlzdGVuZXIsXG4gICAgICBpc0F2YWlsYWJsZSxcbiAgICB9KSxcbiAgICBbXG4gICAgICBzZXRJdGVtLFxuICAgICAgZ2V0SXRlbSxcbiAgICAgIHNldFNwaWZmeU9uRmVhdHVyZUZsYWcsXG4gICAgICBnZXRTcGlmZnlPbkZlYXR1cmVGbGFnLFxuICAgICAgYXR0YWNoTGlzdGVuZXIsXG4gICAgICBkZXRhY2hMaXN0ZW5lcixcbiAgICAgIGlzQXZhaWxhYmxlLFxuICAgIF1cbiAgKTtcblxuICByZXR1cm4gKFxuICAgIDxMb2NhbFN0b3JhZ2VDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt2YWx1ZX0+XG4gICAgICB7Y2hpbGRyZW59XG4gICAgPC9Mb2NhbFN0b3JhZ2VDb250ZXh0LlByb3ZpZGVyPlxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZUxvY2FsU3RvcmFnZSA9ICgpID0+IHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoTG9jYWxTdG9yYWdlQ29udGV4dCk7XG4gIGlmICghY29udGV4dCkge1xuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgIFwidXNlTG9jYWxTdG9yYWdlIG11c3QgYmUgdXNlZCB3aXRoaW4gYSBMb2NhbFN0b3JhZ2VQcm92aWRlclwiXG4gICAgKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7O0FBVUEsSUFBWSxnRUFBTDtBQUNMO0FBQ0E7QUFDQTs7O0FBYUYsTUFBTSxzQkFBc0IsY0FBOEMsS0FBSztBQUUvRSxNQUFhQSx3QkFBaUUsRUFDNUUsZUFDSTtDQUNKLE1BQU0sY0FBYyxjQUFjO0FBQ2hDLE1BQUk7QUFDRixVQUFPLE9BQU8sV0FBVyxlQUFlLENBQUMsQ0FBQyxPQUFPO1VBQzNDO0FBQ04sVUFBTzs7SUFFUixFQUFFLENBQUM7QUFFTixpQkFBZ0I7QUFDZCxNQUFJLENBQUMsWUFDSCxnQkFBTyxTQUFTLGlDQUFpQyxPQUFVO0lBRTVELENBQUMsWUFBWSxDQUFDO0NBRWpCLE1BQU0sVUFBVSxhQUNiLEtBQWEsWUFBa0I7QUFDOUIsTUFBSSxDQUFDLFlBQWE7QUFDbEIsZUFBYSxRQUFRLEtBQUtDLFFBQU07QUFDaEMsU0FBTyxjQUNMLElBQUksYUFBYSxXQUFXO0dBQUU7R0FBSyxVQUFVQTtHQUFPLENBQUMsQ0FDdEQ7SUFFSCxDQUFDLFlBQVksQ0FDZDtDQUVELE1BQU0sVUFBVSxhQUNiLFFBQWdCO0FBQ2YsTUFBSSxDQUFDLFlBQWEsUUFBTztBQUN6QixTQUFPLGFBQWEsUUFBUSxJQUFJO0lBRWxDLENBQUMsWUFBWSxDQUNkO0NBRUQsTUFBTSx5QkFBeUIsYUFDNUIsWUFBZ0M7QUFDL0IsTUFBSSxDQUFDLFlBQWE7QUFDbEIsTUFBSUEsWUFBVSxLQUNaLGNBQWEsUUFBUSxpQkFBaUIsa0JBQWtCLE9BQU87V0FDdERBLFlBQVUsTUFDbkIsY0FBYSxRQUFRLGlCQUFpQixrQkFBa0IsUUFBUTtJQUdwRSxDQUFDLFlBQVksQ0FDZDtDQUVELE1BQU0seUJBQXlCLGtCQUFpQztBQUM5RCxNQUFJLENBQUMsWUFBYSxRQUFPO0FBQ3pCLFNBQU8sYUFBYSxRQUFRLGlCQUFpQixpQkFBaUI7SUFDN0QsQ0FBQyxZQUFZLENBQUM7Q0FFakIsTUFBTSxpQkFBaUIsOEJBQ2YsSUFBSSxLQUE0QyxFQUN0RCxFQUFFLENBQ0g7Q0FFRCxNQUFNLGlCQUFpQixhQUNwQixhQUF5RTtBQUN4RSxNQUFJLENBQUMsZUFBZSxJQUFJLFNBQVMsV0FBVyxFQUFFO0dBQzVDLE1BQU0sV0FBVyxVQUF3QjtBQUN2QyxRQUFJLE1BQU0sUUFBUSxTQUFTLFdBQ3pCO0FBRUYsbUJBQU8sU0FDTCxpQ0FBaUMsTUFBTSxJQUFJLFdBQzNDLE1BQU0sU0FDUDtBQUNELGFBQVMsU0FBUyxNQUFNOztBQUUxQixrQkFBZSxJQUFJLFNBQVMsWUFBWSxRQUFROztBQUVsRCxTQUFPLGVBQWUsSUFBSSxTQUFTLFdBQVc7SUFFaEQsQ0FBQyxlQUFlLENBQ2pCO0NBRUQsTUFBTSxpQkFBaUIsYUFDcEIsYUFBOEM7QUFDN0MsTUFBSSxDQUFDLFlBQWE7QUFDbEIsU0FBTyxpQkFBaUIsV0FBVyxlQUFlLFNBQVMsQ0FBQztJQUU5RCxDQUFDLGFBQWEsZUFBZSxDQUM5QjtDQUVELE1BQU0saUJBQWlCLGFBQ3BCLGFBQThDO0FBQzdDLE1BQUksQ0FBQyxZQUFhO0FBQ2xCLFNBQU8sb0JBQW9CLFdBQVcsZUFBZSxTQUFTLENBQUM7SUFFakUsQ0FBQyxhQUFhLGVBQWUsQ0FDOUI7Q0FFRCxNQUFNLFFBQVEsZUFDTDtFQUNMO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0QsR0FDRDtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0QsQ0FDRjtBQUVELFFBQ0Usb0JBQUMsb0JBQW9CO0VBQWdCO0VBQ2xDO0dBQzRCOztBQUluQyxNQUFhLHdCQUF3QjtDQUNuQyxNQUFNLFVBQVUsV0FBVyxvQkFBb0I7QUFDL0MsS0FBSSxDQUFDLFFBQ0gsT0FBTSxJQUFJLE1BQ1IsNkRBQ0Q7QUFFSCxRQUFPIn0=
@@ -1,115 +0,0 @@
1
- const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_logger = require('./logger-Cp7J4YJT.cjs');
3
- let react = require("react");
4
- react = require_chunk.__toESM(react);
5
- let react_jsx_runtime = require("react/jsx-runtime");
6
- react_jsx_runtime = require_chunk.__toESM(react_jsx_runtime);
7
-
8
- //#region src/contexts/localStorageContext/localStorageContext.tsx
9
- let LocalStorageKeys = /* @__PURE__ */ function(LocalStorageKeys$1) {
10
- LocalStorageKeys$1["ChatId"] = "v1-spiffy-chat-session-id";
11
- LocalStorageKeys$1["SpiffyOnOverride"] = "spiffy_on";
12
- LocalStorageKeys$1["EnviveOnOverride"] = "envive_on";
13
- return LocalStorageKeys$1;
14
- }({});
15
- const LocalStorageContext = (0, react.createContext)(null);
16
- const LocalStorageProvider = ({ children }) => {
17
- const isAvailable = (0, react.useMemo)(() => {
18
- try {
19
- return typeof window !== "undefined" && !!window.localStorage;
20
- } catch {
21
- return false;
22
- }
23
- }, []);
24
- (0, react.useEffect)(() => {
25
- if (!isAvailable) require_logger.logger_default.logError("localStorage is not available", void 0);
26
- }, [isAvailable]);
27
- const setItem = (0, react.useCallback)((key, value$1) => {
28
- if (!isAvailable) return;
29
- localStorage.setItem(key, value$1);
30
- window.dispatchEvent(new StorageEvent("storage", {
31
- key,
32
- newValue: value$1
33
- }));
34
- }, [isAvailable]);
35
- const getItem = (0, react.useCallback)((key) => {
36
- if (!isAvailable) return null;
37
- return localStorage.getItem(key);
38
- }, [isAvailable]);
39
- const setSpiffyOnFeatureFlag = (0, react.useCallback)((value$1) => {
40
- if (!isAvailable) return;
41
- if (value$1 === true) localStorage.setItem(LocalStorageKeys.SpiffyOnOverride, "true");
42
- else if (value$1 === false) localStorage.setItem(LocalStorageKeys.SpiffyOnOverride, "false");
43
- }, [isAvailable]);
44
- const getSpiffyOnFeatureFlag = (0, react.useCallback)(() => {
45
- if (!isAvailable) return null;
46
- return localStorage.getItem(LocalStorageKeys.SpiffyOnOverride);
47
- }, [isAvailable]);
48
- const listenersCache = (0, react.useMemo)(() => /* @__PURE__ */ new Map(), []);
49
- const listenerForKey = (0, react.useCallback)((listener) => {
50
- if (!listenersCache.has(listener.storageKey)) {
51
- const handler = (event) => {
52
- if (event.key !== listener.storageKey) return;
53
- require_logger.logger_default.logDebug(`[spiffy-ai] Storage event key=${event.key}, value=`, event.newValue);
54
- listener.listener(event);
55
- };
56
- listenersCache.set(listener.storageKey, handler);
57
- }
58
- return listenersCache.get(listener.storageKey);
59
- }, [listenersCache]);
60
- const attachListener = (0, react.useCallback)((listener) => {
61
- if (!isAvailable) return;
62
- window.addEventListener("storage", listenerForKey(listener));
63
- }, [isAvailable, listenerForKey]);
64
- const detachListener = (0, react.useCallback)((listener) => {
65
- if (!isAvailable) return;
66
- window.removeEventListener("storage", listenerForKey(listener));
67
- }, [isAvailable, listenerForKey]);
68
- const value = (0, react.useMemo)(() => ({
69
- setItem,
70
- getItem,
71
- setSpiffyOnFeatureFlag,
72
- getSpiffyOnFeatureFlag,
73
- attachListener,
74
- detachListener,
75
- isAvailable
76
- }), [
77
- setItem,
78
- getItem,
79
- setSpiffyOnFeatureFlag,
80
- getSpiffyOnFeatureFlag,
81
- attachListener,
82
- detachListener,
83
- isAvailable
84
- ]);
85
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(LocalStorageContext.Provider, {
86
- value,
87
- children
88
- });
89
- };
90
- const useLocalStorage = () => {
91
- const context = (0, react.useContext)(LocalStorageContext);
92
- if (!context) throw new Error("useLocalStorage must be used within a LocalStorageProvider");
93
- return context;
94
- };
95
-
96
- //#endregion
97
- Object.defineProperty(exports, 'LocalStorageKeys', {
98
- enumerable: true,
99
- get: function () {
100
- return LocalStorageKeys;
101
- }
102
- });
103
- Object.defineProperty(exports, 'LocalStorageProvider', {
104
- enumerable: true,
105
- get: function () {
106
- return LocalStorageProvider;
107
- }
108
- });
109
- Object.defineProperty(exports, 'useLocalStorage', {
110
- enumerable: true,
111
- get: function () {
112
- return useLocalStorage;
113
- }
114
- });
115
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWxTdG9yYWdlQ29udGV4dC1jbk1ZRGxsRS5janMiLCJuYW1lcyI6WyJMb2NhbFN0b3JhZ2VQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0+IiwidmFsdWUiXSwic291cmNlcyI6WyIuLi9zcmMvY29udGV4dHMvbG9jYWxTdG9yYWdlQ29udGV4dC9sb2NhbFN0b3JhZ2VDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtcbiAgY3JlYXRlQ29udGV4dCxcbiAgdXNlQ29udGV4dCxcbiAgdXNlQ2FsbGJhY2ssXG4gIHVzZU1lbW8sXG4gIHVzZUVmZmVjdCxcbn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgTG9nZ2VyIGZyb20gXCJzcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dnZXJcIjtcbmltcG9ydCB7IExvY2FsU3RvcmFnZUV2ZW50TGlzdGVuZXIgfSBmcm9tIFwic3JjL2FwcGxpY2F0aW9uL21vZGVscy9sb2NhbFN0b3JhZ2VFdmVudExpc3RlbmVyXCI7XG5cbmV4cG9ydCBlbnVtIExvY2FsU3RvcmFnZUtleXMge1xuICBDaGF0SWQgPSBcInYxLXNwaWZmeS1jaGF0LXNlc3Npb24taWRcIixcbiAgU3BpZmZ5T25PdmVycmlkZSA9IFwic3BpZmZ5X29uXCIsXG4gIEVudml2ZU9uT3ZlcnJpZGUgPSBcImVudml2ZV9vblwiLFxufVxuXG5pbnRlcmZhY2UgTG9jYWxTdG9yYWdlQ29udGV4dFR5cGUge1xuICBzZXRJdGVtOiAoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpID0+IHZvaWQ7XG4gIGdldEl0ZW06IChrZXk6IHN0cmluZykgPT4gc3RyaW5nIHwgbnVsbDtcbiAgc2V0U3BpZmZ5T25GZWF0dXJlRmxhZzogKHZhbHVlOiBib29sZWFuIHwgbnVsbCkgPT4gdm9pZDtcbiAgZ2V0U3BpZmZ5T25GZWF0dXJlRmxhZzogKCkgPT4gc3RyaW5nIHwgbnVsbDtcbiAgYXR0YWNoTGlzdGVuZXI6IChsaXN0ZW5lcjogTG9jYWxTdG9yYWdlRXZlbnRMaXN0ZW5lcikgPT4gdm9pZDtcbiAgZGV0YWNoTGlzdGVuZXI6IChsaXN0ZW5lcjogTG9jYWxTdG9yYWdlRXZlbnRMaXN0ZW5lcikgPT4gdm9pZDtcbiAgaXNBdmFpbGFibGU6IGJvb2xlYW47XG59XG5cbmNvbnN0IExvY2FsU3RvcmFnZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0PExvY2FsU3RvcmFnZUNvbnRleHRUeXBlIHwgbnVsbD4obnVsbCk7XG5cbmV4cG9ydCBjb25zdCBMb2NhbFN0b3JhZ2VQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0+ID0gKHtcbiAgY2hpbGRyZW4sXG59KSA9PiB7XG4gIGNvbnN0IGlzQXZhaWxhYmxlID0gdXNlTWVtbygoKSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiICYmICEhd2luZG93LmxvY2FsU3RvcmFnZTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICghaXNBdmFpbGFibGUpIHtcbiAgICAgIExvZ2dlci5sb2dFcnJvcihcImxvY2FsU3RvcmFnZSBpcyBub3QgYXZhaWxhYmxlXCIsIHVuZGVmaW5lZCk7XG4gICAgfVxuICB9LCBbaXNBdmFpbGFibGVdKTtcblxuICBjb25zdCBzZXRJdGVtID0gdXNlQ2FsbGJhY2soXG4gICAgKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKSA9PiB7XG4gICAgICBpZiAoIWlzQXZhaWxhYmxlKSByZXR1cm47XG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShrZXksIHZhbHVlKTtcbiAgICAgIHdpbmRvdy5kaXNwYXRjaEV2ZW50KFxuICAgICAgICBuZXcgU3RvcmFnZUV2ZW50KFwic3RvcmFnZVwiLCB7IGtleSwgbmV3VmFsdWU6IHZhbHVlIH0pXG4gICAgICApO1xuICAgIH0sXG4gICAgW2lzQXZhaWxhYmxlXVxuICApO1xuXG4gIGNvbnN0IGdldEl0ZW0gPSB1c2VDYWxsYmFjayhcbiAgICAoa2V5OiBzdHJpbmcpID0+IHtcbiAgICAgIGlmICghaXNBdmFpbGFibGUpIHJldHVybiBudWxsO1xuICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKGtleSk7XG4gICAgfSxcbiAgICBbaXNBdmFpbGFibGVdXG4gICk7XG5cbiAgY29uc3Qgc2V0U3BpZmZ5T25GZWF0dXJlRmxhZyA9IHVzZUNhbGxiYWNrKFxuICAgICh2YWx1ZTogYm9vbGVhbiB8IG51bGwpOiB2b2lkID0+IHtcbiAgICAgIGlmICghaXNBdmFpbGFibGUpIHJldHVybjtcbiAgICAgIGlmICh2YWx1ZSA9PT0gdHJ1ZSkge1xuICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShMb2NhbFN0b3JhZ2VLZXlzLlNwaWZmeU9uT3ZlcnJpZGUsIFwidHJ1ZVwiKTtcbiAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKExvY2FsU3RvcmFnZUtleXMuU3BpZmZ5T25PdmVycmlkZSwgXCJmYWxzZVwiKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtpc0F2YWlsYWJsZV1cbiAgKTtcblxuICBjb25zdCBnZXRTcGlmZnlPbkZlYXR1cmVGbGFnID0gdXNlQ2FsbGJhY2soKCk6IHN0cmluZyB8IG51bGwgPT4ge1xuICAgIGlmICghaXNBdmFpbGFibGUpIHJldHVybiBudWxsO1xuICAgIHJldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShMb2NhbFN0b3JhZ2VLZXlzLlNwaWZmeU9uT3ZlcnJpZGUpO1xuICB9LCBbaXNBdmFpbGFibGVdKTtcblxuICBjb25zdCBsaXN0ZW5lcnNDYWNoZSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gbmV3IE1hcDxzdHJpbmcsIChldmVudDogU3RvcmFnZUV2ZW50KSA9PiB2b2lkPigpLFxuICAgIFtdXG4gICk7XG5cbiAgY29uc3QgbGlzdGVuZXJGb3JLZXkgPSB1c2VDYWxsYmFjayhcbiAgICAobGlzdGVuZXI6IExvY2FsU3RvcmFnZUV2ZW50TGlzdGVuZXIpOiAoKGV2ZW50OiBTdG9yYWdlRXZlbnQpID0+IHZvaWQpID0+IHtcbiAgICAgIGlmICghbGlzdGVuZXJzQ2FjaGUuaGFzKGxpc3RlbmVyLnN0b3JhZ2VLZXkpKSB7XG4gICAgICAgIGNvbnN0IGhhbmRsZXIgPSAoZXZlbnQ6IFN0b3JhZ2VFdmVudCkgPT4ge1xuICAgICAgICAgIGlmIChldmVudC5rZXkgIT09IGxpc3RlbmVyLnN0b3JhZ2VLZXkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICB9XG4gICAgICAgICAgTG9nZ2VyLmxvZ0RlYnVnKFxuICAgICAgICAgICAgYFtzcGlmZnktYWldIFN0b3JhZ2UgZXZlbnQga2V5PSR7ZXZlbnQua2V5fSwgdmFsdWU9YCxcbiAgICAgICAgICAgIGV2ZW50Lm5ld1ZhbHVlXG4gICAgICAgICAgKTtcbiAgICAgICAgICBsaXN0ZW5lci5saXN0ZW5lcihldmVudCk7XG4gICAgICAgIH07XG4gICAgICAgIGxpc3RlbmVyc0NhY2hlLnNldChsaXN0ZW5lci5zdG9yYWdlS2V5LCBoYW5kbGVyKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBsaXN0ZW5lcnNDYWNoZS5nZXQobGlzdGVuZXIuc3RvcmFnZUtleSkhO1xuICAgIH0sXG4gICAgW2xpc3RlbmVyc0NhY2hlXVxuICApO1xuXG4gIGNvbnN0IGF0dGFjaExpc3RlbmVyID0gdXNlQ2FsbGJhY2soXG4gICAgKGxpc3RlbmVyOiBMb2NhbFN0b3JhZ2VFdmVudExpc3RlbmVyKTogdm9pZCA9PiB7XG4gICAgICBpZiAoIWlzQXZhaWxhYmxlKSByZXR1cm47XG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcihcInN0b3JhZ2VcIiwgbGlzdGVuZXJGb3JLZXkobGlzdGVuZXIpKTtcbiAgICB9LFxuICAgIFtpc0F2YWlsYWJsZSwgbGlzdGVuZXJGb3JLZXldXG4gICk7XG5cbiAgY29uc3QgZGV0YWNoTGlzdGVuZXIgPSB1c2VDYWxsYmFjayhcbiAgICAobGlzdGVuZXI6IExvY2FsU3RvcmFnZUV2ZW50TGlzdGVuZXIpOiB2b2lkID0+IHtcbiAgICAgIGlmICghaXNBdmFpbGFibGUpIHJldHVybjtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKFwic3RvcmFnZVwiLCBsaXN0ZW5lckZvcktleShsaXN0ZW5lcikpO1xuICAgIH0sXG4gICAgW2lzQXZhaWxhYmxlLCBsaXN0ZW5lckZvcktleV1cbiAgKTtcblxuICBjb25zdCB2YWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHtcbiAgICAgIHNldEl0ZW0sXG4gICAgICBnZXRJdGVtLFxuICAgICAgc2V0U3BpZmZ5T25GZWF0dXJlRmxhZyxcbiAgICAgIGdldFNwaWZmeU9uRmVhdHVyZUZsYWcsXG4gICAgICBhdHRhY2hMaXN0ZW5lcixcbiAgICAgIGRldGFjaExpc3RlbmVyLFxuICAgICAgaXNBdmFpbGFibGUsXG4gICAgfSksXG4gICAgW1xuICAgICAgc2V0SXRlbSxcbiAgICAgIGdldEl0ZW0sXG4gICAgICBzZXRTcGlmZnlPbkZlYXR1cmVGbGFnLFxuICAgICAgZ2V0U3BpZmZ5T25GZWF0dXJlRmxhZyxcbiAgICAgIGF0dGFjaExpc3RlbmVyLFxuICAgICAgZGV0YWNoTGlzdGVuZXIsXG4gICAgICBpc0F2YWlsYWJsZSxcbiAgICBdXG4gICk7XG5cbiAgcmV0dXJuIChcbiAgICA8TG9jYWxTdG9yYWdlQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17dmFsdWV9PlxuICAgICAge2NoaWxkcmVufVxuICAgIDwvTG9jYWxTdG9yYWdlQ29udGV4dC5Qcm92aWRlcj5cbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VMb2NhbFN0b3JhZ2UgPSAoKSA9PiB7XG4gIGNvbnN0IGNvbnRleHQgPSB1c2VDb250ZXh0KExvY2FsU3RvcmFnZUNvbnRleHQpO1xuICBpZiAoIWNvbnRleHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBcInVzZUxvY2FsU3RvcmFnZSBtdXN0IGJlIHVzZWQgd2l0aGluIGEgTG9jYWxTdG9yYWdlUHJvdmlkZXJcIlxuICAgICk7XG4gIH1cbiAgcmV0dXJuIGNvbnRleHQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQVVBLElBQVksZ0VBQUw7QUFDTDtBQUNBO0FBQ0E7OztBQWFGLE1BQU0sK0NBQW9FLEtBQUs7QUFFL0UsTUFBYUEsd0JBQWlFLEVBQzVFLGVBQ0k7Q0FDSixNQUFNLHVDQUE0QjtBQUNoQyxNQUFJO0FBQ0YsVUFBTyxPQUFPLFdBQVcsZUFBZSxDQUFDLENBQUMsT0FBTztVQUMzQztBQUNOLFVBQU87O0lBRVIsRUFBRSxDQUFDO0FBRU4sNEJBQWdCO0FBQ2QsTUFBSSxDQUFDLFlBQ0gsK0JBQU8sU0FBUyxpQ0FBaUMsT0FBVTtJQUU1RCxDQUFDLFlBQVksQ0FBQztDQUVqQixNQUFNLGtDQUNILEtBQWEsWUFBa0I7QUFDOUIsTUFBSSxDQUFDLFlBQWE7QUFDbEIsZUFBYSxRQUFRLEtBQUtDLFFBQU07QUFDaEMsU0FBTyxjQUNMLElBQUksYUFBYSxXQUFXO0dBQUU7R0FBSyxVQUFVQTtHQUFPLENBQUMsQ0FDdEQ7SUFFSCxDQUFDLFlBQVksQ0FDZDtDQUVELE1BQU0sa0NBQ0gsUUFBZ0I7QUFDZixNQUFJLENBQUMsWUFBYSxRQUFPO0FBQ3pCLFNBQU8sYUFBYSxRQUFRLElBQUk7SUFFbEMsQ0FBQyxZQUFZLENBQ2Q7Q0FFRCxNQUFNLGlEQUNILFlBQWdDO0FBQy9CLE1BQUksQ0FBQyxZQUFhO0FBQ2xCLE1BQUlBLFlBQVUsS0FDWixjQUFhLFFBQVEsaUJBQWlCLGtCQUFrQixPQUFPO1dBQ3REQSxZQUFVLE1BQ25CLGNBQWEsUUFBUSxpQkFBaUIsa0JBQWtCLFFBQVE7SUFHcEUsQ0FBQyxZQUFZLENBQ2Q7Q0FFRCxNQUFNLHNEQUEwRDtBQUM5RCxNQUFJLENBQUMsWUFBYSxRQUFPO0FBQ3pCLFNBQU8sYUFBYSxRQUFRLGlCQUFpQixpQkFBaUI7SUFDN0QsQ0FBQyxZQUFZLENBQUM7Q0FFakIsTUFBTSwwREFDRSxJQUFJLEtBQTRDLEVBQ3RELEVBQUUsQ0FDSDtDQUVELE1BQU0seUNBQ0gsYUFBeUU7QUFDeEUsTUFBSSxDQUFDLGVBQWUsSUFBSSxTQUFTLFdBQVcsRUFBRTtHQUM1QyxNQUFNLFdBQVcsVUFBd0I7QUFDdkMsUUFBSSxNQUFNLFFBQVEsU0FBUyxXQUN6QjtBQUVGLGtDQUFPLFNBQ0wsaUNBQWlDLE1BQU0sSUFBSSxXQUMzQyxNQUFNLFNBQ1A7QUFDRCxhQUFTLFNBQVMsTUFBTTs7QUFFMUIsa0JBQWUsSUFBSSxTQUFTLFlBQVksUUFBUTs7QUFFbEQsU0FBTyxlQUFlLElBQUksU0FBUyxXQUFXO0lBRWhELENBQUMsZUFBZSxDQUNqQjtDQUVELE1BQU0seUNBQ0gsYUFBOEM7QUFDN0MsTUFBSSxDQUFDLFlBQWE7QUFDbEIsU0FBTyxpQkFBaUIsV0FBVyxlQUFlLFNBQVMsQ0FBQztJQUU5RCxDQUFDLGFBQWEsZUFBZSxDQUM5QjtDQUVELE1BQU0seUNBQ0gsYUFBOEM7QUFDN0MsTUFBSSxDQUFDLFlBQWE7QUFDbEIsU0FBTyxvQkFBb0IsV0FBVyxlQUFlLFNBQVMsQ0FBQztJQUVqRSxDQUFDLGFBQWEsZUFBZSxDQUM5QjtDQUVELE1BQU0sa0NBQ0c7RUFDTDtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNELEdBQ0Q7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNELENBQ0Y7QUFFRCxRQUNFLDJDQUFDLG9CQUFvQjtFQUFnQjtFQUNsQztHQUM0Qjs7QUFJbkMsTUFBYSx3QkFBd0I7Q0FDbkMsTUFBTSxnQ0FBcUIsb0JBQW9CO0FBQy9DLEtBQUksQ0FBQyxRQUNILE9BQU0sSUFBSSxNQUNSLDZEQUNEO0FBRUgsUUFBTyJ9