@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.
- package/package.json +1 -1
- package/dist/AmplitudeOperations-CNyxbBY6.cjs +0 -0
- package/dist/AmplitudeOperations-Oa2efWtF.js +0 -1
- package/dist/NewOrgConfig-B1zC4zP0.js +0 -10
- package/dist/NewOrgConfig-DAGaGj2d.cjs +0 -15
- package/dist/SystemSettingsContext-BHi2YaQp.cjs +0 -20
- package/dist/SystemSettingsContext-BLRfTbCC.js +0 -13
- package/dist/TrackComponentVisibleEvent-CftWp8QR.js +0 -52
- package/dist/TrackComponentVisibleEvent-Dag8vFhb.cjs +0 -59
- package/dist/amplitudeContext-B73xamNe.d.cts +0 -52
- package/dist/amplitudeContext-BhhYPJSL.d.ts +0 -52
- package/dist/amplitudeContext-CwPtBPhg.js +0 -287
- package/dist/amplitudeContext-DTC6maR0.cjs +0 -309
- package/dist/api-Bc3_julZ.cjs +0 -239
- package/dist/api-D9gmGNAV.js +0 -166
- package/dist/app-CoQ1nC-j.js +0 -132
- package/dist/app-DN72spgQ.cjs +0 -178
- package/dist/application/models/graphql/index.cjs +0 -5
- package/dist/application/models/graphql/index.d.cts +0 -2
- package/dist/application/models/graphql/index.d.ts +0 -2
- package/dist/application/models/graphql/index.js +0 -4
- package/dist/application/models/guards/api/index.cjs +0 -16
- package/dist/application/models/guards/api/index.d.cts +0 -3
- package/dist/application/models/guards/api/index.d.ts +0 -3
- package/dist/application/models/guards/api/index.js +0 -5
- package/dist/application/models/guards/utils.cjs +0 -3
- package/dist/application/models/guards/utils.d.cts +0 -2
- package/dist/application/models/guards/utils.d.ts +0 -2
- package/dist/application/models/guards/utils.js +0 -3
- package/dist/application/models/index.cjs +0 -69
- package/dist/application/models/index.d.cts +0 -12
- package/dist/application/models/index.d.ts +0 -12
- package/dist/application/models/index.js +0 -12
- package/dist/application/models/utilityTypes/index.cjs +0 -1
- package/dist/application/models/utilityTypes/index.d.cts +0 -2
- package/dist/application/models/utilityTypes/index.d.ts +0 -2
- package/dist/application/models/utilityTypes/index.js +0 -3
- package/dist/application/models/variantInfo/index.cjs +0 -1
- package/dist/application/models/variantInfo/index.d.cts +0 -2
- package/dist/application/models/variantInfo/index.d.ts +0 -2
- package/dist/application/models/variantInfo/index.js +0 -3
- package/dist/application/utils/index.cjs +0 -48
- package/dist/application/utils/index.d.cts +0 -263
- package/dist/application/utils/index.d.ts +0 -263
- package/dist/application/utils/index.js +0 -22
- package/dist/atomStore-BS6qtYZF.js +0 -1
- package/dist/atomStore-BjRyLFEx.cjs +0 -0
- package/dist/atomStore-BuopbV9k.js +0 -32
- package/dist/atomStore-CZKe3itM.cjs +0 -58
- package/dist/atoms/app/index.cjs +0 -20
- package/dist/atoms/app/index.d.cts +0 -39
- package/dist/atoms/app/index.d.ts +0 -39
- package/dist/atoms/app/index.js +0 -16
- package/dist/atoms/atomStore/index.cjs +0 -7
- package/dist/atoms/atomStore/index.d.cts +0 -24
- package/dist/atoms/atomStore/index.d.ts +0 -24
- package/dist/atoms/atomStore/index.js +0 -4
- package/dist/atoms/chat/index.cjs +0 -52
- package/dist/atoms/chat/index.d.cts +0 -163
- package/dist/atoms/chat/index.d.ts +0 -163
- package/dist/atoms/chat/index.js +0 -23
- package/dist/atoms/globalSearch/index.cjs +0 -6
- package/dist/atoms/globalSearch/index.d.cts +0 -24
- package/dist/atoms/globalSearch/index.d.ts +0 -24
- package/dist/atoms/globalSearch/index.js +0 -3
- package/dist/atoms/org/index.cjs +0 -19
- package/dist/atoms/org/index.d.cts +0 -59
- package/dist/atoms/org/index.d.ts +0 -59
- package/dist/atoms/org/index.js +0 -6
- package/dist/atoms/search/index.cjs +0 -60
- package/dist/atoms/search/index.d.cts +0 -14
- package/dist/atoms/search/index.d.ts +0 -14
- package/dist/atoms/search/index.js +0 -30
- package/dist/atoms/search/types.cjs +0 -5
- package/dist/atoms/search/types.d.cts +0 -2
- package/dist/atoms/search/types.d.ts +0 -2
- package/dist/atoms/search/types.js +0 -3
- package/dist/atoms/search/utils.cjs +0 -3
- package/dist/atoms/search/utils.d.cts +0 -5
- package/dist/atoms/search/utils.d.ts +0 -5
- package/dist/atoms/search/utils.js +0 -3
- package/dist/cdnContext-ShKWLgKA.cjs +0 -53
- package/dist/cdnContext-pfrZ6lfu.js +0 -38
- package/dist/chat-BOuhPeoD.cjs +0 -394
- package/dist/chat-BkjIKhc5.cjs +0 -152
- package/dist/chat-C3I3GG1L.js +0 -258
- package/dist/chat-CgLypC3w.js +0 -26
- package/dist/chatElementDisplayLocation-BwiXrkN7.d.ts +0 -25
- package/dist/chatElementDisplayLocation-DWmfNX_u.d.cts +0 -25
- package/dist/chatSearch-B9Rk7Dl3.js +0 -295
- package/dist/chatSearch-BqVwk1ya.cjs +0 -418
- package/dist/chatState-CX50Roi9.js +0 -34
- package/dist/chatState-xC0pswtB.cjs +0 -120
- package/dist/chunk-CUT6urMc.cjs +0 -30
- package/dist/commerce-api-BCSZ4QFV.js +0 -311
- package/dist/commerce-api-DemPaNpu.cjs +0 -318
- package/dist/components-Cby-Cma3.cjs +0 -29
- package/dist/components-D1mg1-Br.js +0 -11
- package/dist/config/locators/components/chat/index.cjs +0 -23
- package/dist/config/locators/components/chat/index.d.cts +0 -2
- package/dist/config/locators/components/chat/index.d.ts +0 -2
- package/dist/config/locators/components/chat/index.js +0 -3
- package/dist/config/locators/components/chat/variants/index.cjs +0 -29
- package/dist/config/locators/components/chat/variants/index.d.cts +0 -16
- package/dist/config/locators/components/chat/variants/index.d.ts +0 -16
- package/dist/config/locators/components/chat/variants/index.js +0 -17
- package/dist/config/locators/components/index.cjs +0 -5
- package/dist/config/locators/components/index.d.cts +0 -2
- package/dist/config/locators/components/index.d.ts +0 -2
- package/dist/config/locators/components/index.js +0 -3
- package/dist/config/locators/components/search/index.cjs +0 -13
- package/dist/config/locators/components/search/index.d.cts +0 -8
- package/dist/config/locators/components/search/index.d.ts +0 -8
- package/dist/config/locators/components/search/index.js +0 -9
- package/dist/config/locators/index.cjs +0 -67
- package/dist/config/locators/index.d.cts +0 -25
- package/dist/config/locators/index.d.ts +0 -25
- package/dist/config/locators/index.js +0 -26
- package/dist/contexts/amplitudeContext/index.cjs +0 -22
- package/dist/contexts/amplitudeContext/index.d.cts +0 -2
- package/dist/contexts/amplitudeContext/index.d.ts +0 -2
- package/dist/contexts/amplitudeContext/index.js +0 -20
- package/dist/contexts/cdnContext/index.cjs +0 -7
- package/dist/contexts/cdnContext/index.d.cts +0 -15
- package/dist/contexts/cdnContext/index.d.ts +0 -15
- package/dist/contexts/cdnContext/index.js +0 -6
- package/dist/contexts/chatContext/index.cjs +0 -331
- package/dist/contexts/chatContext/index.d.cts +0 -15
- package/dist/contexts/chatContext/index.d.ts +0 -15
- package/dist/contexts/chatContext/index.js +0 -324
- package/dist/contexts/enviveConfigContext/index.cjs +0 -7
- package/dist/contexts/enviveConfigContext/index.d.cts +0 -30
- package/dist/contexts/enviveConfigContext/index.d.ts +0 -30
- package/dist/contexts/enviveConfigContext/index.js +0 -6
- package/dist/contexts/enviveCssContext/index.cjs +0 -66
- package/dist/contexts/enviveCssContext/index.d.cts +0 -10
- package/dist/contexts/enviveCssContext/index.d.ts +0 -10
- package/dist/contexts/enviveCssContext/index.js +0 -63
- package/dist/contexts/featureFlagContext/index.cjs +0 -107
- package/dist/contexts/featureFlagContext/index.d.cts +0 -20
- package/dist/contexts/featureFlagContext/index.d.ts +0 -20
- package/dist/contexts/featureFlagContext/index.js +0 -103
- package/dist/contexts/featureFlagServiceContext/index.cjs +0 -6
- package/dist/contexts/featureFlagServiceContext/index.d.cts +0 -5
- package/dist/contexts/featureFlagServiceContext/index.d.ts +0 -5
- package/dist/contexts/featureFlagServiceContext/index.js +0 -5
- package/dist/contexts/graphqlContext/index.cjs +0 -16
- package/dist/contexts/graphqlContext/index.d.cts +0 -14
- package/dist/contexts/graphqlContext/index.d.ts +0 -14
- package/dist/contexts/graphqlContext/index.js +0 -15
- package/dist/contexts/localStorageContext/index.cjs +0 -6
- package/dist/contexts/localStorageContext/index.d.cts +0 -30
- package/dist/contexts/localStorageContext/index.d.ts +0 -30
- package/dist/contexts/localStorageContext/index.js +0 -4
- package/dist/contexts/newOrgConfigContext/index.cjs +0 -20
- package/dist/contexts/newOrgConfigContext/index.d.cts +0 -15
- package/dist/contexts/newOrgConfigContext/index.d.ts +0 -15
- package/dist/contexts/newOrgConfigContext/index.js +0 -19
- package/dist/contexts/searchContext/index.cjs +0 -24
- package/dist/contexts/searchContext/index.d.cts +0 -16
- package/dist/contexts/searchContext/index.d.ts +0 -16
- package/dist/contexts/searchContext/index.js +0 -23
- package/dist/contexts/sessionStorageContext/index.cjs +0 -5
- package/dist/contexts/sessionStorageContext/index.d.cts +0 -15
- package/dist/contexts/sessionStorageContext/index.d.ts +0 -15
- package/dist/contexts/sessionStorageContext/index.js +0 -4
- package/dist/contexts/shopifyUrlContext/index.cjs +0 -5
- package/dist/contexts/shopifyUrlContext/index.d.cts +0 -20
- package/dist/contexts/shopifyUrlContext/index.d.ts +0 -20
- package/dist/contexts/shopifyUrlContext/index.js +0 -4
- package/dist/contexts/systemSettingsContext/index.cjs +0 -8
- package/dist/contexts/systemSettingsContext/index.d.cts +0 -37
- package/dist/contexts/systemSettingsContext/index.d.ts +0 -37
- package/dist/contexts/systemSettingsContext/index.js +0 -6
- package/dist/contexts/types.cjs +0 -7
- package/dist/contexts/types.d.cts +0 -4
- package/dist/contexts/types.d.ts +0 -4
- package/dist/contexts/types.js +0 -3
- package/dist/contexts/userIdentityContext/index.cjs +0 -27
- package/dist/contexts/userIdentityContext/index.d.cts +0 -2
- package/dist/contexts/userIdentityContext/index.d.ts +0 -2
- package/dist/contexts/userIdentityContext/index.js +0 -26
- package/dist/domObserver-B19-69gW.js +0 -285
- package/dist/domObserver-CwieVNgj.cjs +0 -304
- package/dist/enviveConfig-BSfyz_pm.js +0 -62
- package/dist/enviveConfig-D8vcVPWD.cjs +0 -130
- package/dist/enviveConfigContext-C8cCcdKU.cjs +0 -60
- package/dist/enviveConfigContext-CJqpRSKu.js +0 -45
- package/dist/events/index.cjs +0 -4
- package/dist/events/index.d.cts +0 -46
- package/dist/events/index.d.ts +0 -46
- package/dist/events/index.js +0 -3
- package/dist/events-BHJJjPDN.js +0 -78
- package/dist/events-B_fJZf9E.cjs +0 -90
- package/dist/featureFlagServiceContext-CUBoBV2i.cjs +0 -56
- package/dist/featureFlagServiceContext-Cpw8omUr.d.ts +0 -23
- package/dist/featureFlagServiceContext-Cvn6fcdB.d.cts +0 -23
- package/dist/featureFlagServiceContext-Dg8okVk1.js +0 -42
- package/dist/featureGates-Blx10fwB.js +0 -27
- package/dist/featureGates-DcZNrUma.cjs +0 -33
- package/dist/frontendConfig-DnMZfvcA.d.cts +0 -857
- package/dist/frontendConfig-Dqxbqo8G.d.ts +0 -857
- package/dist/globalSearch-C94-vEVh.cjs +0 -39
- package/dist/globalSearch-Dlbnfasm.js +0 -14
- package/dist/graphql-B9HhDXYt.cjs +0 -53
- package/dist/graphql-W7GMIHUu.js +0 -36
- package/dist/graphqlConfig-B4ddz1vH.cjs +0 -39
- package/dist/graphqlConfig-BnjOdeX7.js +0 -14
- package/dist/graphqlContext-6-GcR9zd.d.cts +0 -28
- package/dist/graphqlContext-8kw4aLRc.js +0 -96
- package/dist/graphqlContext-EhYZM1v_.d.ts +0 -28
- package/dist/graphqlContext-Fwc6Upvh.cjs +0 -111
- package/dist/hooks/AmplitudeOperations/index.cjs +0 -22
- package/dist/hooks/AmplitudeOperations/index.d.cts +0 -12
- package/dist/hooks/AmplitudeOperations/index.d.ts +0 -12
- package/dist/hooks/AmplitudeOperations/index.js +0 -22
- package/dist/hooks/AppDetails/index.cjs +0 -19
- package/dist/hooks/AppDetails/index.d.cts +0 -27
- package/dist/hooks/AppDetails/index.d.ts +0 -27
- package/dist/hooks/AppDetails/index.js +0 -19
- package/dist/hooks/BlockBackButton/index.cjs +0 -29
- package/dist/hooks/BlockBackButton/index.d.cts +0 -5
- package/dist/hooks/BlockBackButton/index.d.ts +0 -5
- package/dist/hooks/BlockBackButton/index.js +0 -27
- package/dist/hooks/CdnOperations/index.cjs +0 -24
- package/dist/hooks/CdnOperations/index.d.cts +0 -7
- package/dist/hooks/CdnOperations/index.d.ts +0 -7
- package/dist/hooks/CdnOperations/index.js +0 -22
- package/dist/hooks/ChatToggle/index.cjs +0 -64
- package/dist/hooks/ChatToggle/index.d.cts +0 -12
- package/dist/hooks/ChatToggle/index.d.ts +0 -12
- package/dist/hooks/ChatToggle/index.js +0 -62
- package/dist/hooks/ChatToggleAnalytics/index.cjs +0 -38
- package/dist/hooks/ChatToggleAnalytics/index.d.cts +0 -9
- package/dist/hooks/ChatToggleAnalytics/index.d.ts +0 -9
- package/dist/hooks/ChatToggleAnalytics/index.js +0 -36
- package/dist/hooks/CustomerSupportHandoff/index.cjs +0 -36
- package/dist/hooks/CustomerSupportHandoff/index.d.cts +0 -16
- package/dist/hooks/CustomerSupportHandoff/index.d.ts +0 -16
- package/dist/hooks/CustomerSupportHandoff/index.js +0 -34
- package/dist/hooks/Debounce/index.cjs +0 -3
- package/dist/hooks/Debounce/index.d.cts +0 -5
- package/dist/hooks/Debounce/index.d.ts +0 -5
- package/dist/hooks/Debounce/index.js +0 -3
- package/dist/hooks/ElementObserver/index.cjs +0 -179
- package/dist/hooks/ElementObserver/index.d.cts +0 -29
- package/dist/hooks/ElementObserver/index.d.ts +0 -29
- package/dist/hooks/ElementObserver/index.js +0 -177
- package/dist/hooks/GrabAndScroll/index.cjs +0 -99
- package/dist/hooks/GrabAndScroll/index.d.cts +0 -14
- package/dist/hooks/GrabAndScroll/index.d.ts +0 -14
- package/dist/hooks/GrabAndScroll/index.js +0 -97
- package/dist/hooks/GraphQLConfig/index.cjs +0 -17
- package/dist/hooks/GraphQLConfig/index.d.cts +0 -28
- package/dist/hooks/GraphQLConfig/index.d.ts +0 -28
- package/dist/hooks/GraphQLConfig/index.js +0 -16
- package/dist/hooks/IdentifyUser/index.cjs +0 -60
- package/dist/hooks/IdentifyUser/index.d.cts +0 -10
- package/dist/hooks/IdentifyUser/index.d.ts +0 -10
- package/dist/hooks/IdentifyUser/index.js +0 -58
- package/dist/hooks/ImageResolver/index.cjs +0 -55
- package/dist/hooks/ImageResolver/index.d.cts +0 -7
- package/dist/hooks/ImageResolver/index.d.ts +0 -7
- package/dist/hooks/ImageResolver/index.js +0 -53
- package/dist/hooks/Intersection/index.cjs +0 -3
- package/dist/hooks/Intersection/index.d.cts +0 -7
- package/dist/hooks/Intersection/index.d.ts +0 -7
- package/dist/hooks/Intersection/index.js +0 -3
- package/dist/hooks/IsSmallScreen/index.cjs +0 -22
- package/dist/hooks/IsSmallScreen/index.d.cts +0 -5
- package/dist/hooks/IsSmallScreen/index.d.ts +0 -5
- package/dist/hooks/IsSmallScreen/index.js +0 -20
- package/dist/hooks/LocalStorageOperations/index.cjs +0 -79
- package/dist/hooks/LocalStorageOperations/index.d.cts +0 -17
- package/dist/hooks/LocalStorageOperations/index.d.ts +0 -17
- package/dist/hooks/LocalStorageOperations/index.js +0 -74
- package/dist/hooks/MessageFilter/index.cjs +0 -54
- package/dist/hooks/MessageFilter/index.d.cts +0 -30
- package/dist/hooks/MessageFilter/index.d.ts +0 -30
- package/dist/hooks/MessageFilter/index.js +0 -54
- package/dist/hooks/MessageScrollObserver/index.cjs +0 -36
- package/dist/hooks/MessageScrollObserver/index.d.cts +0 -5
- package/dist/hooks/MessageScrollObserver/index.d.ts +0 -5
- package/dist/hooks/MessageScrollObserver/index.js +0 -34
- package/dist/hooks/NewOrgConfig/index.cjs +0 -20
- package/dist/hooks/NewOrgConfig/index.d.cts +0 -20
- package/dist/hooks/NewOrgConfig/index.d.ts +0 -20
- package/dist/hooks/NewOrgConfig/index.js +0 -20
- package/dist/hooks/Search/index.cjs +0 -326
- package/dist/hooks/Search/index.d.cts +0 -61
- package/dist/hooks/Search/index.d.ts +0 -61
- package/dist/hooks/Search/index.js +0 -323
- package/dist/hooks/SearchOperations/index.cjs +0 -102
- package/dist/hooks/SearchOperations/index.d.cts +0 -22
- package/dist/hooks/SearchOperations/index.d.ts +0 -22
- package/dist/hooks/SearchOperations/index.js +0 -99
- package/dist/hooks/SessionStorageOperations/index.cjs +0 -30
- package/dist/hooks/SessionStorageOperations/index.d.cts +0 -8
- package/dist/hooks/SessionStorageOperations/index.d.ts +0 -8
- package/dist/hooks/SessionStorageOperations/index.js +0 -28
- package/dist/hooks/ShopifyUrlOperations/index.cjs +0 -53
- package/dist/hooks/ShopifyUrlOperations/index.d.cts +0 -23
- package/dist/hooks/ShopifyUrlOperations/index.d.ts +0 -23
- package/dist/hooks/ShopifyUrlOperations/index.js +0 -49
- package/dist/hooks/SnapCalculator/index.cjs +0 -29
- package/dist/hooks/SnapCalculator/index.d.cts +0 -12
- package/dist/hooks/SnapCalculator/index.d.ts +0 -12
- package/dist/hooks/SnapCalculator/index.js +0 -27
- package/dist/hooks/SystemSettingsContext/index.cjs +0 -7
- package/dist/hooks/SystemSettingsContext/index.d.cts +0 -23
- package/dist/hooks/SystemSettingsContext/index.d.ts +0 -23
- package/dist/hooks/SystemSettingsContext/index.js +0 -7
- package/dist/hooks/TrackComponentVisibleEvent/index.cjs +0 -22
- package/dist/hooks/TrackComponentVisibleEvent/index.d.cts +0 -18
- package/dist/hooks/TrackComponentVisibleEvent/index.d.ts +0 -18
- package/dist/hooks/TrackComponentVisibleEvent/index.js +0 -22
- package/dist/hooks/UpdateAnalyticsProps/index.cjs +0 -62
- package/dist/hooks/UpdateAnalyticsProps/index.d.cts +0 -9
- package/dist/hooks/UpdateAnalyticsProps/index.d.ts +0 -9
- package/dist/hooks/UpdateAnalyticsProps/index.js +0 -59
- package/dist/hooks/utils.cjs +0 -8
- package/dist/hooks/utils.d.cts +0 -13
- package/dist/hooks/utils.d.ts +0 -13
- package/dist/hooks/utils.js +0 -3
- package/dist/index-BN-3ctk_.d.ts +0 -184
- package/dist/index-BPxqQmpF.d.ts +0 -1
- package/dist/index-Bl9pjZeG.d.ts +0 -186
- package/dist/index-Bmub8e38.d.cts +0 -98
- package/dist/index-BoYC9XLW.d.ts +0 -39
- package/dist/index-C12-NmS7.d.cts +0 -25
- package/dist/index-C6KdON7d.d.ts +0 -25
- package/dist/index-CESxqFso.d.cts +0 -228
- package/dist/index-CK_J3QMY.d.ts +0 -676
- package/dist/index-CVa3DeXJ.d.cts +0 -9
- package/dist/index-C_MIfxF0.d.cts +0 -676
- package/dist/index-CiWEYzXl.d.cts +0 -184
- package/dist/index-DOii3C6b.d.ts +0 -9
- package/dist/index-Dcgz5i3Q.d.cts +0 -186
- package/dist/index-Dr_c2DDq.d.ts +0 -98
- package/dist/index-DsiilEj-.d.ts +0 -228
- package/dist/index-RcVcRKH7.d.cts +0 -1
- package/dist/index-hdbCEjYy.d.cts +0 -39
- package/dist/interceptors/index.cjs +0 -4
- package/dist/interceptors/index.d.cts +0 -20
- package/dist/interceptors/index.d.ts +0 -20
- package/dist/interceptors/index.js +0 -4
- package/dist/interceptors/types.cjs +0 -1
- package/dist/interceptors/types.d.cts +0 -13
- package/dist/interceptors/types.d.ts +0 -13
- package/dist/interceptors/types.js +0 -3
- package/dist/localStorageContext-Dwgto93_.js +0 -95
- package/dist/localStorageContext-cnMYDllE.cjs +0 -115
- package/dist/logger-Cp7J4YJT.cjs +0 -26
- package/dist/logger-oAgZx2-m.js +0 -20
- package/dist/models-B1P-dSCW.cjs +0 -1537
- package/dist/models-CgvSM2fW.js +0 -1296
- package/dist/newOrgConfigAtom-D6R-7HCk.cjs +0 -15
- package/dist/newOrgConfigAtom-bn1lnljf.js +0 -8
- package/dist/newOrgConfigContext-BKb9qGfc.d.cts +0 -16
- package/dist/newOrgConfigContext-BX6cyQRB.cjs +0 -68
- package/dist/newOrgConfigContext-D9PpVqyW.d.ts +0 -16
- package/dist/newOrgConfigContext-UshqFMAV.js +0 -53
- package/dist/nodeSelector-B3bPtEjX.d.cts +0 -31
- package/dist/nodeSelector-D5gjDWZ3.d.ts +0 -31
- package/dist/org-CIhjzxWr.cjs +0 -43
- package/dist/org-CeWXnpwF.js +0 -12
- package/dist/orgAnalyticsConfig-BC4_sEmn.js +0 -14
- package/dist/orgAnalyticsConfig-DsGbyFhO.cjs +0 -39
- package/dist/search-76xcuxjY.cjs +0 -205
- package/dist/search-B6xaOds7.js +0 -126
- package/dist/search-BLShhjvR.d.ts +0 -20
- package/dist/search-filter-types-BBIjvwJV.d.cts +0 -102
- package/dist/search-filter-types-BlmWOnlA.d.ts +0 -102
- package/dist/search-y-ioX5Mz.d.cts +0 -20
- package/dist/searchContext-5qTU8CbH.js +0 -129
- package/dist/searchContext-DmXo2rpU.cjs +0 -145
- package/dist/searchServiceAdapter-DEv1tTn0.cjs +0 -34
- package/dist/searchServiceAdapter-WyCU55NV.js +0 -16
- package/dist/sessionStorageContext-B-UFXyJR.cjs +0 -66
- package/dist/sessionStorageContext-DnuKi3Gk.js +0 -52
- package/dist/shopifyUrlContext-Lm-Xcut2.cjs +0 -75
- package/dist/shopifyUrlContext-jLW63VLY.js +0 -61
- package/dist/spiffyWidgets-BuS00VaQ.d.cts +0 -20
- package/dist/spiffyWidgets-GILaqHv6.d.ts +0 -20
- package/dist/systemSettingsContext--LcXOVJz.js +0 -39
- package/dist/systemSettingsContext-CafaP6Zh.cjs +0 -60
- package/dist/test-types-EzMFw_U3.d.ts +0 -40
- package/dist/test-types-ThQiO_cc.d.cts +0 -40
- package/dist/types/index.cjs +0 -34
- package/dist/types/index.d.cts +0 -3
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.js +0 -31
- package/dist/types-6siNDmGv.d.ts +0 -10
- package/dist/types-BN2z0HcL.d.ts +0 -51
- package/dist/types-BwNrLPSZ.cjs +0 -106
- package/dist/types-CKMMb_gX.d.cts +0 -51
- package/dist/types-CS0Hrzja.js +0 -30
- package/dist/types-CxObxLKs.cjs +0 -48
- package/dist/types-D3uOF0Oy.js +0 -76
- package/dist/types-D4aa7_7x.d.cts +0 -10
- package/dist/types-DtTnp0o0.js +0 -1
- package/dist/types-a8gm_IaQ.cjs +0 -0
- package/dist/types.cjs +0 -0
- package/dist/types.d.cts +0 -15
- package/dist/types.d.ts +0 -15
- package/dist/types.js +0 -1
- package/dist/unsupportedProductExceptions-CKiri_vO.cjs +0 -32
- package/dist/unsupportedProductExceptions-ClxlJ6cU.js +0 -20
- package/dist/urlsParser-BV5yF8sa.cjs +0 -78
- package/dist/urlsParser-DUgV_Qy9.js +0 -42
- package/dist/useAmplitudeOperations-aGOqxc4V.cjs +0 -41
- package/dist/useAmplitudeOperations-wQnkMaDm.js +0 -34
- package/dist/useAppDetails-9WXEc3mg.cjs +0 -38
- package/dist/useAppDetails-mNC2PBqH.js +0 -30
- package/dist/useDebounce-BaIp-A1W.cjs +0 -26
- package/dist/useDebounce-CxPj9WmE.js +0 -19
- package/dist/useGraphQLConfig-CTsRsKd2.js +0 -63
- package/dist/useGraphQLConfig-D7naV2RD.cjs +0 -76
- package/dist/useIntersection-B4J9UhaG.js +0 -21
- package/dist/useIntersection-DKWc5MY6.cjs +0 -28
- package/dist/useMessageInterceptor-CstX10ih.cjs +0 -33
- package/dist/useMessageInterceptor-D5oAekXn.js +0 -25
- package/dist/userIdentityContext-BA6EN-pz.cjs +0 -125
- package/dist/userIdentityContext-D2oFVFzo.d.cts +0 -20
- package/dist/userIdentityContext-FTwTL0WF.js +0 -109
- package/dist/userIdentityContext-wYRpgkaJ.d.ts +0 -20
- package/dist/utilityTypes-DynzxjK3.js +0 -1
- package/dist/utilityTypes-xb8SjKSV.cjs +0 -0
- package/dist/utils-2SWrJ12w.cjs +0 -29
- package/dist/utils-ARmpTh1O.js +0 -27
- package/dist/utils-B1xLx9S8.d.ts +0 -15
- package/dist/utils-B3x_9JTY.d.cts +0 -15
- package/dist/utils-BSYichA7.d.cts +0 -22
- package/dist/utils-Bcz5kAgP.js +0 -92
- package/dist/utils-BgMcvG6l.js +0 -606
- package/dist/utils-CMqFfqZx.cjs +0 -130
- package/dist/utils-Cavu4XiM.cjs +0 -33
- package/dist/utils-CqBxIpEV.js +0 -23
- package/dist/utils-D_aOvxMg.cjs +0 -715
- package/dist/utils-FU_r-pTj.d.ts +0 -22
- package/dist/variantInfo-B7IwRpCg.cjs +0 -0
- package/dist/variantInfo-BtOYUGWa.js +0 -1
package/dist/index-DsiilEj-.d.ts
DELETED
|
@@ -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,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 +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,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
|