@envive-ai/react-hooks 0.3.3 → 0.3.5
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/dist/_virtual/rolldown_runtime.cjs +2 -0
- package/dist/_virtual/rolldown_runtime.js +29 -0
- package/dist/application/commerce-api.cjs +12 -4
- package/dist/application/commerce-api.js +12 -4
- package/dist/application/models/api/userEvent.d.cts +4 -2
- package/dist/application/models/api/userEvent.d.ts +4 -2
- package/dist/application/models/chatElementDisplayLocationV3.cjs +24 -0
- package/dist/application/models/chatElementDisplayLocationV3.d.cts +21 -0
- package/dist/application/models/chatElementDisplayLocationV3.d.ts +21 -0
- package/dist/application/models/chatElementDisplayLocationV3.js +23 -0
- package/dist/application/models/colorsConfigV3.cjs +26 -0
- package/dist/application/models/colorsConfigV3.d.cts +22 -0
- package/dist/application/models/colorsConfigV3.d.ts +22 -0
- package/dist/application/models/colorsConfigV3.js +24 -0
- package/dist/application/models/featureGates.cjs +6 -1
- package/dist/application/models/featureGates.d.cts +6 -1
- package/dist/application/models/featureGates.d.ts +6 -1
- package/dist/application/models/featureGates.js +6 -1
- package/dist/application/models/frontendConfig.d.cts +4 -2
- package/dist/application/models/frontendConfig.d.ts +4 -2
- package/dist/application/models/frontendConfigV3.d.cts +14 -0
- package/dist/application/models/frontendConfigV3.d.ts +14 -0
- package/dist/application/models/guards/api/isApiFormResponse.cjs +1 -1
- package/dist/application/models/guards/api/isApiFormResponse.js +1 -1
- package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.cjs +1 -1
- package/dist/application/models/guards/api/isApiFormSubmittedResponseAttributes.js +1 -1
- package/dist/application/models/guards/api/isApiOrderResponseAttributes.cjs +1 -1
- package/dist/application/models/guards/api/isApiOrderResponseAttributes.js +1 -1
- package/dist/application/models/guards/api/isApiPDPEventAttributes.cjs +2 -2
- package/dist/application/models/guards/api/isApiPDPEventAttributes.js +2 -2
- package/dist/application/models/guards/api/isApiProductResponseAttributes.cjs +1 -1
- package/dist/application/models/guards/api/isApiProductResponseAttributes.js +1 -1
- package/dist/application/models/guards/api/isApiResponse.cjs +1 -1
- package/dist/application/models/guards/api/isApiResponse.js +1 -1
- package/dist/application/models/index.cjs +3 -0
- package/dist/application/models/index.d.cts +4 -3
- package/dist/application/models/index.d.ts +4 -3
- package/dist/application/models/index.js +3 -2
- package/dist/application/models/utils/snakeToCamelTransformer.cjs +2 -1
- package/dist/application/models/utils/snakeToCamelTransformer.d.cts +7 -2
- package/dist/application/models/utils/snakeToCamelTransformer.d.ts +7 -2
- package/dist/application/models/utils/snakeToCamelTransformer.js +2 -2
- package/dist/application/utils/analyticsUtils.cjs +6 -5
- package/dist/application/utils/analyticsUtils.d.cts +1 -1
- package/dist/application/utils/analyticsUtils.d.ts +1 -1
- package/dist/application/utils/analyticsUtils.js +4 -3
- package/dist/application/utils/elementObserver.cjs +1 -1
- package/dist/application/utils/elementObserver.js +1 -1
- package/dist/application/utils/index.d.cts +1 -1
- package/dist/application/utils/index.d.ts +1 -1
- package/dist/application/utils/widgetTextFromApiWidgetTextResponse.cjs +14 -0
- package/dist/application/utils/widgetTextFromApiWidgetTextResponse.js +13 -0
- package/dist/application/utils/widgetTextRequestToApiRequest.cjs +30 -0
- package/dist/application/utils/widgetTextRequestToApiRequest.js +29 -0
- package/dist/atoms/amplitude/amplitudeTrackEventAtom.cjs +1 -1
- package/dist/atoms/amplitude/amplitudeTrackEventAtom.js +1 -1
- package/dist/atoms/app/index.cjs +6 -3
- package/dist/atoms/app/index.d.cts +3 -3
- package/dist/atoms/app/index.d.ts +3 -3
- package/dist/atoms/app/index.js +4 -5
- package/dist/atoms/app/variant.cjs +6 -1
- package/dist/atoms/app/variant.d.cts +21 -6
- package/dist/atoms/app/variant.d.ts +21 -6
- package/dist/atoms/app/variant.js +4 -2
- package/dist/atoms/chat/chatState.cjs +9 -4
- package/dist/atoms/chat/chatState.d.cts +25 -18
- package/dist/atoms/chat/chatState.d.ts +25 -18
- package/dist/atoms/chat/chatState.js +6 -3
- package/dist/atoms/chat/form.cjs +4 -4
- package/dist/atoms/chat/form.d.cts +2 -2
- package/dist/atoms/chat/form.d.ts +2 -2
- package/dist/atoms/chat/index.cjs +32 -30
- package/dist/atoms/chat/index.d.cts +5 -5
- package/dist/atoms/chat/index.d.ts +4 -4
- package/dist/atoms/chat/index.js +2 -2
- package/dist/atoms/chat/lastMessage.cjs +4 -4
- package/dist/atoms/chat/lastMessage.d.cts +2 -2
- package/dist/atoms/chat/lastMessage.d.ts +2 -2
- package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
- package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
- package/dist/atoms/chat/renderedWidgetRefs.d.cts +2 -2
- package/dist/atoms/chat/renderedWidgetRefs.d.ts +2 -2
- package/dist/atoms/chat/replies.cjs +9 -8
- package/dist/atoms/chat/replies.d.cts +3 -3
- package/dist/atoms/chat/replies.d.ts +3 -3
- package/dist/atoms/chat/replies.js +3 -2
- package/dist/atoms/chat/suggestions.cjs +6 -6
- package/dist/atoms/chat/suggestions.d.cts +2 -2
- package/dist/atoms/chat/suggestions.d.ts +2 -2
- package/dist/atoms/envive/enviveConfig.cjs +5 -12
- package/dist/atoms/envive/enviveConfig.js +5 -12
- package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
- package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
- package/dist/atoms/org/customerService.d.cts +6 -6
- package/dist/atoms/org/customerService.d.ts +6 -6
- package/dist/atoms/org/graphqlConfig.cjs +1 -3
- package/dist/atoms/org/graphqlConfig.d.cts +6 -9
- package/dist/atoms/org/graphqlConfig.d.ts +6 -9
- package/dist/atoms/org/graphqlConfig.js +2 -3
- package/dist/atoms/org/index.cjs +2 -3
- package/dist/atoms/org/index.d.cts +2 -2
- package/dist/atoms/org/index.d.ts +2 -2
- package/dist/atoms/org/index.js +2 -2
- package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
- package/dist/atoms/org/newOrgConfigAtom.d.ts +2 -2
- package/dist/atoms/org/orgAnalyticsConfig.d.cts +5 -5
- package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
- package/dist/atoms/search/chatSearch.cjs +7 -7
- package/dist/atoms/search/chatSearch.d.cts +20 -18
- package/dist/atoms/search/chatSearch.d.ts +20 -18
- package/dist/atoms/search/productRetrievalAPI.cjs +1 -7
- package/dist/atoms/search/productRetrievalAPI.js +1 -7
- package/dist/atoms/search/productRetrievalAdapter.cjs +4 -4
- package/dist/atoms/search/productRetrievalAdapter.js +4 -4
- package/dist/atoms/search/searchAPI.cjs +1 -1
- package/dist/atoms/search/searchAPI.d.cts +15 -14
- package/dist/atoms/search/searchAPI.d.ts +15 -14
- package/dist/atoms/search/searchAPI.js +1 -1
- package/dist/atoms/search/types.d.cts +1 -1
- package/dist/atoms/search/types.d.ts +1 -1
- package/dist/atoms/search/utils.d.ts +1 -1
- package/dist/atoms/widget/chatPreviewLoading.cjs +23 -0
- package/dist/atoms/widget/chatPreviewLoading.d.cts +26 -0
- package/dist/atoms/widget/chatPreviewLoading.d.ts +26 -0
- package/dist/atoms/widget/chatPreviewLoading.js +22 -0
- package/dist/atoms/widget/index.cjs +3 -0
- package/dist/atoms/widget/index.d.cts +2 -0
- package/dist/atoms/widget/index.d.ts +2 -0
- package/dist/atoms/widget/index.js +3 -0
- package/dist/contexts/amplitudeContext/amplitudeContext.cjs +40 -227
- package/dist/contexts/amplitudeContext/amplitudeContext.d.cts +4 -39
- package/dist/contexts/amplitudeContext/amplitudeContext.d.ts +4 -39
- package/dist/contexts/amplitudeContext/amplitudeContext.js +44 -230
- package/dist/contexts/amplitudeContext/index.cjs +2 -1
- package/dist/contexts/amplitudeContext/index.d.cts +2 -1
- package/dist/contexts/amplitudeContext/index.d.ts +2 -1
- package/dist/contexts/amplitudeContext/index.js +2 -1
- package/dist/contexts/enviveConfigContext/enviveConfigContext.cjs +3 -2
- package/dist/contexts/enviveConfigContext/enviveConfigContext.d.cts +2 -1
- package/dist/contexts/enviveConfigContext/enviveConfigContext.d.ts +2 -1
- package/dist/contexts/enviveConfigContext/enviveConfigContext.js +3 -2
- package/dist/contexts/enviveContext/enviveContext.cjs +70 -16
- package/dist/contexts/enviveContext/enviveContext.d.cts +10 -1
- package/dist/contexts/enviveContext/enviveContext.d.ts +10 -1
- package/dist/contexts/enviveContext/enviveContext.js +72 -18
- package/dist/contexts/enviveContext/types.d.ts +1 -1
- package/dist/contexts/enviveCssContext/enviveCssContext.cjs +96 -24
- package/dist/contexts/enviveCssContext/enviveCssContext.js +96 -24
- package/dist/contexts/featureFlagContext/featureFlagContext.cjs +1 -1
- package/dist/contexts/featureFlagContext/featureFlagContext.js +1 -1
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.cjs +6 -8
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.d.cts +2 -2
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.d.ts +2 -2
- package/dist/contexts/featureFlagServiceContext/featureFlagServiceContext.js +6 -8
- package/dist/contexts/graphqlContext/graphqlContext.cjs +151 -8
- package/dist/contexts/graphqlContext/graphqlContext.d.cts +17 -5
- package/dist/contexts/graphqlContext/graphqlContext.d.ts +17 -5
- package/dist/contexts/graphqlContext/graphqlContext.js +151 -8
- package/dist/contexts/graphqlContext/index.d.cts +2 -2
- package/dist/contexts/graphqlContext/index.d.ts +2 -2
- package/dist/contexts/graphqlContext/mockV3Config.cjs +250 -0
- package/dist/contexts/graphqlContext/mockV3Config.js +249 -0
- package/dist/contexts/hardcopyContext/hardcopyContext.cjs +144 -24
- package/dist/contexts/hardcopyContext/hardcopyContext.d.cts +4 -3
- package/dist/contexts/hardcopyContext/hardcopyContext.d.ts +4 -3
- package/dist/contexts/hardcopyContext/hardcopyContext.js +145 -25
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.cjs +7 -8
- package/dist/contexts/newOrgConfigContext/newOrgConfigContext.js +8 -9
- package/dist/contexts/pageContext/index.cjs +1 -0
- package/dist/contexts/pageContext/index.d.cts +2 -2
- package/dist/contexts/pageContext/index.d.ts +2 -2
- package/dist/contexts/pageContext/index.js +2 -2
- package/dist/contexts/pageContext/mapping.cjs +95 -1
- package/dist/contexts/pageContext/mapping.d.cts +6 -3
- package/dist/contexts/pageContext/mapping.d.ts +6 -3
- package/dist/contexts/pageContext/mapping.js +94 -2
- package/dist/contexts/pageContext/pageContext.cjs +59 -11
- package/dist/contexts/pageContext/pageContext.d.cts +6 -2
- package/dist/contexts/pageContext/pageContext.d.ts +6 -2
- package/dist/contexts/pageContext/pageContext.js +61 -13
- package/dist/contexts/pageContext/types.d.cts +6 -2
- package/dist/contexts/pageContext/types.d.ts +6 -2
- package/dist/contexts/salesAgentContext/chatAPI.cjs +9 -3
- package/dist/contexts/salesAgentContext/chatAPI.d.cts +4 -1
- package/dist/contexts/salesAgentContext/chatAPI.d.ts +4 -1
- package/dist/contexts/salesAgentContext/chatAPI.js +9 -3
- package/dist/contexts/salesAgentContext/index.d.cts +2 -2
- package/dist/contexts/salesAgentContext/index.d.ts +2 -2
- package/dist/contexts/salesAgentContext/salesAgentContext.cjs +68 -26
- package/dist/contexts/salesAgentContext/salesAgentContext.d.cts +2 -2
- package/dist/contexts/salesAgentContext/salesAgentContext.d.ts +2 -2
- package/dist/contexts/salesAgentContext/salesAgentContext.js +67 -25
- package/dist/contexts/salesAgentContext/salesAgentService.cjs +49 -10
- package/dist/contexts/salesAgentContext/salesAgentService.js +47 -8
- package/dist/contexts/salesAgentContext/statusCodeError.cjs +14 -0
- package/dist/contexts/salesAgentContext/statusCodeError.js +13 -0
- package/dist/contexts/searchContext/searchContext.cjs +1 -1
- package/dist/contexts/searchContext/searchContext.js +1 -1
- package/dist/contexts/systemSettingsContext/systemSettingsContext.d.cts +2 -2
- package/dist/contexts/types.cjs +2 -13
- package/dist/contexts/types.d.cts +12 -16
- package/dist/contexts/types.d.ts +12 -16
- package/dist/contexts/types.js +3 -13
- package/dist/contexts/typesV3.cjs +128 -0
- package/dist/contexts/typesV3.d.cts +273 -0
- package/dist/contexts/typesV3.d.ts +273 -0
- package/dist/contexts/typesV3.js +116 -0
- package/dist/contexts/uiConfigContext/index.cjs +4 -0
- package/dist/contexts/uiConfigContext/index.d.cts +2 -0
- package/dist/contexts/uiConfigContext/index.d.ts +2 -0
- package/dist/contexts/uiConfigContext/index.js +3 -0
- package/dist/contexts/uiConfigContext/uiConfigContext.cjs +44 -0
- package/dist/contexts/uiConfigContext/uiConfigContext.d.cts +15 -0
- package/dist/contexts/uiConfigContext/uiConfigContext.d.ts +15 -0
- package/dist/contexts/uiConfigContext/uiConfigContext.js +42 -0
- package/dist/contexts/userIdentityContext/userIdentityContext.cjs +1 -1
- package/dist/contexts/userIdentityContext/userIdentityContext.js +1 -1
- package/dist/contexts/widgetConfigContext/index.cjs +4 -0
- package/dist/contexts/widgetConfigContext/index.d.cts +2 -0
- package/dist/contexts/widgetConfigContext/index.d.ts +2 -0
- package/dist/contexts/widgetConfigContext/index.js +3 -0
- package/dist/contexts/widgetConfigContext/widgetConfigContext.cjs +67 -0
- package/dist/contexts/widgetConfigContext/widgetConfigContext.d.cts +19 -0
- package/dist/contexts/widgetConfigContext/widgetConfigContext.d.ts +19 -0
- package/dist/contexts/widgetConfigContext/widgetConfigContext.js +65 -0
- package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.cts +1 -1
- package/dist/hooks/AmplitudeOperations/useAmplitudeOperations.d.ts +1 -1
- package/dist/hooks/AppDetails/useAppDetails.cjs +2 -4
- package/dist/hooks/AppDetails/useAppDetails.js +3 -5
- package/dist/hooks/ChatToggle/useChatToggle.cjs +6 -5
- package/dist/hooks/ChatToggle/useChatToggle.d.cts +5 -5
- package/dist/hooks/ChatToggle/useChatToggle.d.ts +5 -5
- package/dist/hooks/ChatToggle/useChatToggle.js +3 -2
- package/dist/hooks/ElementObserver/useElementObserver.cjs +10 -10
- package/dist/hooks/ElementObserver/useElementObserver.js +10 -10
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.cts +3 -3
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +2 -2
- package/dist/hooks/GraphQLConfig/index.cjs +1 -1
- package/dist/hooks/GraphQLConfig/index.d.cts +2 -2
- package/dist/hooks/GraphQLConfig/index.d.ts +2 -2
- package/dist/hooks/GraphQLConfig/index.js +2 -2
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.cjs +27 -24
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.cts +5 -4
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.d.ts +5 -4
- package/dist/hooks/GraphQLConfig/useGraphQLConfig.js +27 -24
- package/dist/hooks/Search/useSearch.cjs +11 -10
- package/dist/hooks/Search/useSearch.js +7 -6
- package/dist/hooks/Search/useSearchInput.cjs +4 -4
- package/dist/hooks/Search/useSearchInput.js +1 -1
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.cjs +5 -4
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.cts +1 -1
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.d.ts +1 -1
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.js +3 -2
- package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.cjs +3 -2
- package/dist/hooks/UpdateAnalyticsProps/useUpdateAnalyticsProps.js +3 -2
- package/dist/hooks/utils.d.cts +1 -1
- package/dist/merchants/domInsertion.cjs +1 -1
- package/dist/merchants/domInsertion.d.cts +1 -1
- package/dist/merchants/domInsertion.d.ts +1 -1
- package/dist/merchants/domInsertion.js +1 -1
- package/dist/node_modules/classnames/index.cjs +52 -0
- package/dist/node_modules/classnames/index.js +49 -0
- package/dist/packages/components-v3/dist/ChatHeader/ChatHeader.cjs +2 -0
- package/dist/packages/components-v3/dist/ChatHeader/ChatHeader.js +4 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/CloseButton.cjs +16 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/CloseButton.js +17 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Handle.cjs +6 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Handle.js +8 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Layout.cjs +4 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Layout.js +6 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Logo.cjs +3 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Logo.js +5 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Toggle.cjs +7 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/Toggle.js +9 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/ToggleItem.cjs +6 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/ToggleItem.js +8 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/index.cjs +6 -0
- package/dist/packages/components-v3/dist/ChatHeader/components/index.js +8 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetCloseButtonProperties.cjs +22 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetCloseButtonProperties.js +23 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetHandleProperties.cjs +58 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetHandleProperties.js +59 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetLayoutProperties.cjs +8 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetLayoutProperties.js +9 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleOptionProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleOptionProperties.js +3 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleProperties.cjs +12 -0
- package/dist/packages/components-v3/dist/ChatHeader/hooks/useGetToggleProperties.js +13 -0
- package/dist/packages/components-v3/dist/ChatHeader/index.cjs +2 -0
- package/dist/packages/components-v3/dist/ChatHeader/index.js +4 -0
- package/dist/packages/components-v3/dist/ChatHeader/types/index.cjs +11 -0
- package/dist/packages/components-v3/dist/ChatHeader/types/index.js +10 -0
- package/dist/packages/components-v3/dist/Container/Container.cjs +11 -0
- package/dist/packages/components-v3/dist/Container/Container.js +12 -0
- package/dist/packages/components-v3/dist/Container/hooks/useGetCenterContentProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Container/hooks/useGetCenterContentProperties.js +3 -0
- package/dist/packages/components-v3/dist/Container/hooks/useGetFluidProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Container/hooks/useGetFluidProperties.js +3 -0
- package/dist/packages/components-v3/dist/Container/index.cjs +1 -0
- package/dist/packages/components-v3/dist/Container/index.js +3 -0
- package/dist/packages/components-v3/dist/Image/Image.cjs +16 -0
- package/dist/packages/components-v3/dist/Image/Image.js +17 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetAccessibilityProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetAccessibilityProperties.js +3 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetAspectRatioProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetAspectRatioProperties.js +3 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetObjectFitProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetObjectFitProperties.js +3 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetRoundedProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetRoundedProperties.js +3 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetSkeletonProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetSkeletonProperties.js +3 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetWidthProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useGetWidthProperties.js +3 -0
- package/dist/packages/components-v3/dist/Image/hooks/useHandleImageLoading.cjs +1 -0
- package/dist/packages/components-v3/dist/Image/hooks/useHandleImageLoading.js +3 -0
- package/dist/packages/components-v3/dist/ImageGallery/ImageGallery.cjs +2 -0
- package/dist/packages/components-v3/dist/ImageGallery/ImageGallery.js +4 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/ImageItem.cjs +2 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/ImageItem.js +4 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/Layout.cjs +15 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/Layout.js +16 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/NormalLayout.cjs +4 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/NormalLayout.js +4 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/OverlappedLayout.cjs +1 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/OverlappedLayout.js +3 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/index.cjs +4 -0
- package/dist/packages/components-v3/dist/ImageGallery/components/index.js +6 -0
- package/dist/packages/components-v3/dist/ImageGallery/hooks/useGetContainerProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/ImageGallery/hooks/useGetContainerProperties.js +3 -0
- package/dist/packages/components-v3/dist/ImageGallery/index.cjs +2 -0
- package/dist/packages/components-v3/dist/ImageGallery/index.js +4 -0
- package/dist/packages/components-v3/dist/ImageGallery/types/types.cjs +13 -0
- package/dist/packages/components-v3/dist/ImageGallery/types/types.js +12 -0
- package/dist/packages/components-v3/dist/PromptButton/PromptButton.cjs +12 -0
- package/dist/packages/components-v3/dist/PromptButton/PromptButton.js +13 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Icon.cjs +1 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Icon.js +3 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Label.cjs +3 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Label.js +5 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Layout.cjs +12 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Layout.js +13 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Loading.cjs +9 -0
- package/dist/packages/components-v3/dist/PromptButton/components/Loading.js +10 -0
- package/dist/packages/components-v3/dist/PromptButton/components/index.cjs +4 -0
- package/dist/packages/components-v3/dist/PromptButton/components/index.js +6 -0
- package/dist/packages/components-v3/dist/PromptButton/hooks/useGetBoldTextProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/PromptButton/hooks/useGetBoldTextProperties.js +3 -0
- package/dist/packages/components-v3/dist/PromptButton/hooks/useGetLayoutBaseProperties.cjs +8 -0
- package/dist/packages/components-v3/dist/PromptButton/hooks/useGetLayoutBaseProperties.js +9 -0
- package/dist/packages/components-v3/dist/PromptButton/index.cjs +2 -0
- package/dist/packages/components-v3/dist/PromptButton/index.js +4 -0
- package/dist/packages/components-v3/dist/PromptButton/types/index.cjs +13 -0
- package/dist/packages/components-v3/dist/PromptButton/types/index.js +12 -0
- package/dist/packages/components-v3/dist/PromptCarousel/PromptCarousel.cjs +12 -0
- package/dist/packages/components-v3/dist/PromptCarousel/PromptCarousel.js +14 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/BlockScrollContainer.cjs +9 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/BlockScrollContainer.js +10 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/ButtonContainerRow.cjs +11 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/ButtonContainerRow.js +12 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithBlockScroll.cjs +4 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithBlockScroll.js +6 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithRowScroll.cjs +4 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/CarouselContentWithRowScroll.js +6 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/index.cjs +3 -0
- package/dist/packages/components-v3/dist/PromptCarousel/components/index.js +5 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/index.cjs +5 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/index.js +7 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useButtonScrollPosition.cjs +1 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useButtonScrollPosition.js +3 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselAnimation.cjs +3 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselAnimation.js +5 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselButtons.cjs +1 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselButtons.js +3 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselRefs.cjs +1 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useCarouselRefs.js +3 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useHorizontalScrollAnimation.cjs +1 -0
- package/dist/packages/components-v3/dist/PromptCarousel/hooks/useHorizontalScrollAnimation.js +3 -0
- package/dist/packages/components-v3/dist/PromptCarousel/index.cjs +2 -0
- package/dist/packages/components-v3/dist/PromptCarousel/index.js +4 -0
- package/dist/packages/components-v3/dist/PromptCarousel/types/types.cjs +19 -0
- package/dist/packages/components-v3/dist/PromptCarousel/types/types.js +17 -0
- package/dist/packages/components-v3/dist/Stack/Stack.cjs +36 -0
- package/dist/packages/components-v3/dist/Stack/Stack.js +36 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useFormatStackChildren.cjs +27 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useFormatStackChildren.js +26 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetAlignProperties.cjs +20 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetAlignProperties.js +19 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetDirectionProperties.cjs +19 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetDirectionProperties.js +18 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetGapProperties.cjs +16 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetGapProperties.js +15 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetJustifyProperties.cjs +21 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetJustifyProperties.js +20 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetStyleProperties.cjs +38 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetStyleProperties.js +38 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetWrapProperties.cjs +13 -0
- package/dist/packages/components-v3/dist/Stack/hooks/useGetWrapProperties.js +12 -0
- package/dist/packages/components-v3/dist/Stack/index.cjs +1 -0
- package/dist/packages/components-v3/dist/Stack/index.js +3 -0
- package/dist/packages/components-v3/dist/Stack/utils/constants.cjs +42 -0
- package/dist/packages/components-v3/dist/Stack/utils/constants.js +41 -0
- package/dist/packages/components-v3/dist/Tokens/index.cjs +11 -0
- package/dist/packages/components-v3/dist/Tokens/index.js +13 -0
- package/dist/packages/components-v3/dist/Typography/Typography.cjs +15 -0
- package/dist/packages/components-v3/dist/Typography/Typography.js +16 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetAccessibilityAttributes.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetAccessibilityAttributes.js +3 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetAlignProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetAlignProperties.js +3 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetColorProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetColorProperties.js +3 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetNoWrapProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetNoWrapProperties.js +3 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetNumberOfLinesProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetNumberOfLinesProperties.js +3 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetVariantProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/hooks/useGetVariantProperties.js +3 -0
- package/dist/packages/components-v3/dist/Typography/index.cjs +1 -0
- package/dist/packages/components-v3/dist/Typography/index.js +3 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/WelcomeMessage.cjs +2 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/WelcomeMessage.js +4 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/Container.cjs +14 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/Container.js +15 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/SparkleIcon.cjs +3 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/SparkleIcon.js +5 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/Text.cjs +3 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/Text.js +5 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/Title.cjs +3 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/Title.js +5 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/index.cjs +4 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/components/index.js +6 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetContainerProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetContainerProperties.js +3 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetSparkleIconProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/hooks/useGetSparkleIconProperties.js +3 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/index.cjs +2 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/index.js +4 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/types/types.cjs +14 -0
- package/dist/packages/components-v3/dist/WelcomeMessage/types/types.js +14 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/WidgetWrapper.cjs +12 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/WidgetWrapper.js +13 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/hooks/useGetWrapperProperties.cjs +1 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/hooks/useGetWrapperProperties.js +3 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/index.cjs +2 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/index.js +4 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/types/types.cjs +13 -0
- package/dist/packages/components-v3/dist/WidgetWrapper/types/types.js +12 -0
- package/dist/packages/components-v3/dist/src/models/colorsConfig.cjs +26 -0
- package/dist/packages/components-v3/dist/src/models/colorsConfig.js +25 -0
- package/dist/packages/components-v3/dist/tokens/aspectRatio/aspectRatio.cjs +16 -0
- package/dist/packages/components-v3/dist/tokens/aspectRatio/aspectRatio.js +17 -0
- package/dist/packages/components-v3/dist/tokens/breakpoints/breakpoints.cjs +25 -0
- package/dist/packages/components-v3/dist/tokens/breakpoints/breakpoints.js +23 -0
- package/dist/packages/components-v3/dist/tokens/colors/colors.cjs +51 -0
- package/dist/packages/components-v3/dist/tokens/colors/colors.js +51 -0
- package/dist/packages/components-v3/dist/tokens/radius/radius.cjs +64 -0
- package/dist/packages/components-v3/dist/tokens/radius/radius.js +65 -0
- package/dist/packages/components-v3/dist/tokens/theme/theme.cjs +13 -0
- package/dist/packages/components-v3/dist/tokens/theme/theme.js +12 -0
- package/dist/packages/components-v3/dist/tokens/typography/fontFamily.cjs +25 -0
- package/dist/packages/components-v3/dist/tokens/typography/fontFamily.js +25 -0
- package/dist/packages/components-v3/dist/tokens/typography/fontSize.cjs +37 -0
- package/dist/packages/components-v3/dist/tokens/typography/fontSize.js +38 -0
- package/dist/packages/components-v3/dist/tokens/typography/fontWeight.cjs +17 -0
- package/dist/packages/components-v3/dist/tokens/typography/fontWeight.js +18 -0
- package/dist/packages/components-v3/dist/tokens/typography/letterSpacing.cjs +15 -0
- package/dist/packages/components-v3/dist/tokens/typography/letterSpacing.js +16 -0
- package/dist/packages/components-v3/dist/tokens/typography/lineHeight.cjs +31 -0
- package/dist/packages/components-v3/dist/tokens/typography/lineHeight.js +32 -0
- package/dist/packages/components-v3/dist/tokens/typography/typography.cjs +5 -0
- package/dist/packages/components-v3/dist/tokens/typography/typography.js +7 -0
- package/dist/packages/components-v3/dist/tokens/utils.cjs +7 -0
- package/dist/packages/components-v3/dist/tokens/utils.js +6 -0
- package/dist/packages/components-v3/dist/utils/useCheckIsMobile.cjs +1 -0
- package/dist/packages/components-v3/dist/utils/useCheckIsMobile.js +3 -0
- package/dist/packages/components-v3/dist/utils/useResponsiveValue.cjs +57 -0
- package/dist/packages/components-v3/dist/utils/useResponsiveValue.js +56 -0
- package/dist/packages/icons/dist/FourPointStar.cjs +8 -0
- package/dist/packages/icons/dist/FourPointStar.js +9 -0
- package/dist/packages/icons/dist/IconCloseRounded.cjs +22 -0
- package/dist/packages/icons/dist/IconCloseRounded.js +22 -0
- package/dist/packages/icons/dist/IconCloseSharp.cjs +31 -0
- package/dist/packages/icons/dist/IconCloseSharp.js +31 -0
- package/dist/packages/icons/dist/IconCloseTransparent.cjs +24 -0
- package/dist/packages/icons/dist/IconCloseTransparent.js +24 -0
- package/dist/packages/icons/dist/Sparkles.cjs +8 -0
- package/dist/packages/icons/dist/Sparkles.js +9 -0
- package/dist/packages/icons/dist/_virtual/rolldown_runtime.cjs +28 -0
- package/dist/packages/icons/dist/_virtual/rolldown_runtime.js +26 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.development.cjs +697 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.development.js +697 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.production.min.cjs +44 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react-jsx-runtime.production.min.js +44 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react.development.cjs +1529 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react.development.js +1529 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react.production.min.cjs +330 -0
- package/dist/packages/icons/dist/node_modules/react/cjs/react.production.min.js +330 -0
- package/dist/packages/icons/dist/node_modules/react/index.cjs +14 -0
- package/dist/packages/icons/dist/node_modules/react/index.js +14 -0
- package/dist/packages/icons/dist/node_modules/react/jsx-runtime.cjs +14 -0
- package/dist/packages/icons/dist/node_modules/react/jsx-runtime.js +14 -0
- package/dist/services/amplitudeService/amplitudeService.cjs +204 -0
- package/dist/services/amplitudeService/amplitudeService.d.cts +75 -0
- package/dist/services/amplitudeService/amplitudeService.d.ts +75 -0
- package/dist/services/amplitudeService/amplitudeService.js +202 -0
- package/dist/services/amplitudeService/index.cjs +4 -0
- package/dist/services/amplitudeService/index.d.cts +2 -0
- package/dist/services/amplitudeService/index.d.ts +2 -0
- package/dist/services/amplitudeService/index.js +3 -0
- package/dist/services/enviveConfigService/enviveConfigService.cjs +36 -0
- package/dist/services/enviveConfigService/enviveConfigService.d.cts +43 -0
- package/dist/services/enviveConfigService/enviveConfigService.d.ts +43 -0
- package/dist/services/enviveConfigService/enviveConfigService.js +36 -0
- package/dist/services/enviveConfigService/index.cjs +3 -0
- package/dist/services/enviveConfigService/index.d.cts +2 -0
- package/dist/services/enviveConfigService/index.d.ts +2 -0
- package/dist/services/enviveConfigService/index.js +3 -0
- package/dist/types/customerService.cjs +20 -0
- package/dist/types/customerService.js +19 -0
- package/dist/types/enviveConfig.d.cts +29 -0
- package/dist/types/enviveConfig.d.ts +29 -0
- package/dist/types/index.d.cts +2 -1
- package/dist/types/index.d.ts +2 -1
- package/package.json +36 -8
- package/src/application/commerce-api.ts +14 -1
- package/src/application/models/api/userEvent.ts +3 -1
- package/src/application/models/api/widgetText.ts +9 -0
- package/src/application/models/api/widgetTextRequest.ts +10 -0
- package/src/application/models/chatElementDisplayLocationV3.ts +18 -0
- package/src/application/models/colorsConfigV3.ts +26 -0
- package/src/application/models/featureGates.ts +6 -0
- package/src/application/models/frontendConfig.ts +5 -0
- package/src/application/models/frontendConfigV3.ts +10 -0
- package/src/application/models/guards/api/isApiPDPEventAttributes.ts +5 -1
- package/src/application/models/index.ts +1 -0
- package/src/application/models/utils/snakeToCamelTransformer.ts +1 -1
- package/src/application/utils/elementObserver.ts +2 -2
- package/src/application/utils/widgetTextFromApiWidgetTextResponse.ts +30 -0
- package/src/application/utils/widgetTextRequestToApiRequest.ts +45 -0
- package/src/atoms/amplitude/amplitudeTrackEventAtom.ts +1 -8
- package/src/atoms/app/index.ts +9 -3
- package/src/atoms/app/variant.ts +8 -2
- package/src/atoms/chat/chatState.ts +10 -2
- package/src/atoms/envive/enviveConfig.ts +5 -11
- package/src/atoms/org/graphqlConfig.ts +0 -1
- package/src/atoms/search/productRetrievalAPI.ts +0 -8
- package/src/atoms/search/productRetrievalAdapter.ts +6 -10
- package/src/atoms/widget/chatPreviewLoading.ts +36 -0
- package/src/atoms/widget/index.ts +1 -0
- package/src/contexts/amplitudeContext/__tests__/amplitudeContext.test.tsx +196 -187
- package/src/contexts/amplitudeContext/amplitudeContext.tsx +56 -334
- package/src/contexts/enviveConfigContext/enviveConfigContext.tsx +3 -0
- package/src/contexts/enviveContext/enviveContext.tsx +103 -27
- package/src/contexts/enviveCssContext/enviveCssContext.tsx +121 -22
- package/src/contexts/featureFlagServiceContext/featureFlagServiceContext.tsx +12 -11
- package/src/contexts/graphqlContext/graphqlContext.tsx +250 -13
- package/src/contexts/graphqlContext/mockV3Config.ts +250 -0
- package/src/contexts/hardcopyContext/hardcopyContext.tsx +159 -21
- package/src/contexts/newOrgConfigContext/__tests__/newOrgConfigContext.test.tsx +6 -6
- package/src/contexts/newOrgConfigContext/newOrgConfigContext.tsx +5 -13
- package/src/contexts/pageContext/__tests__/pageContext.test.tsx +141 -75
- package/src/contexts/pageContext/mapping.ts +188 -2
- package/src/contexts/pageContext/pageContext.tsx +68 -14
- package/src/contexts/pageContext/types.ts +5 -2
- package/src/contexts/salesAgentContext/chatAPI.ts +10 -0
- package/src/contexts/salesAgentContext/salesAgentContext.tsx +104 -45
- package/src/contexts/salesAgentContext/salesAgentService.ts +91 -4
- package/src/contexts/salesAgentContext/statusCodeError.ts +10 -0
- package/src/contexts/searchContext/__tests__/searchContext.test.tsx +8 -2
- package/src/contexts/types.ts +15 -19
- package/src/contexts/typesV3.ts +348 -0
- package/src/contexts/uiConfigContext/__tests__/uiConfigContext.test.tsx +329 -0
- package/src/contexts/uiConfigContext/index.ts +1 -0
- package/src/contexts/uiConfigContext/uiConfigContext.tsx +44 -0
- package/src/contexts/widgetConfigContext/__tests__/widgetConfigContext.test.tsx +512 -0
- package/src/contexts/widgetConfigContext/index.ts +1 -0
- package/src/contexts/widgetConfigContext/widgetConfigContext.tsx +84 -0
- package/src/hooks/AppDetails/useAppDetails.ts +2 -2
- package/src/hooks/ChatToggle/useChatToggle.ts +4 -4
- package/src/hooks/ElementObserver/useElementObserver.ts +9 -9
- package/src/hooks/GraphQLConfig/useGraphQLConfig.ts +22 -21
- package/src/hooks/Search/__tests__/useSearch.test.tsx +15 -6
- package/src/hooks/Search/useSearch.tsx +6 -5
- package/src/merchants/domInsertion.ts +0 -16
- package/src/services/amplitudeService/__tests__/amplitudeService.test.ts +558 -0
- package/src/services/amplitudeService/amplitudeService.ts +324 -0
- package/src/services/amplitudeService/index.ts +1 -0
- package/src/services/enviveConfigService/enviveConfigService.ts +72 -0
- package/src/services/enviveConfigService/index.ts +1 -0
- package/src/types/enviveConfig.ts +27 -0
- package/src/types/index.ts +1 -0
- package/dist/hooks/ChatToggleAnalytics/index.cjs +0 -3
- package/dist/hooks/ChatToggleAnalytics/index.d.cts +0 -2
- package/dist/hooks/ChatToggleAnalytics/index.d.ts +0 -2
- package/dist/hooks/ChatToggleAnalytics/index.js +0 -3
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.cjs +0 -19
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.d.cts +0 -9
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.d.ts +0 -9
- package/dist/hooks/ChatToggleAnalytics/useChatToggleAnalytics.js +0 -18
- package/src/application/utils/cdnUtils.ts +0 -8
- package/src/config/divIds.ts +0 -31
- package/src/config/locators/components/chat/entrypoints.ts +0 -13
- package/src/config/locators/components/chat/preview.ts +0 -12
- package/src/config/locators/components/report-issue.ts +0 -21
- package/src/config/socialProofClasses.ts +0 -12
- package/src/events/registerAnalyticsListeners.ts +0 -44
- package/src/hooks/ChatToggleAnalytics/index.ts +0 -1
- package/src/hooks/ChatToggleAnalytics/useChatToggleAnalytics.ts +0 -15
- package/src/types/FilterAttribute.ts +0 -32
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { UserEvent as UserEvent$1 } from "../../application/models/api/userEvent.js";
|
|
1
2
|
import { Suggestion as Suggestion$1 } from "../../application/models/api/suggestion.js";
|
|
2
3
|
import { PageVisitCategory } from "@spiffy-ai/commerce-api-client";
|
|
3
4
|
|
|
@@ -8,6 +9,7 @@ interface SalesAgentChatAPI {
|
|
|
8
9
|
}: {
|
|
9
10
|
pageVisitCategory: PageVisitCategory;
|
|
10
11
|
}) => void;
|
|
12
|
+
logUserEvent: (event: UserEvent$1) => void;
|
|
11
13
|
onSuggestionClicked: (suggestion: Suggestion$1) => void;
|
|
12
14
|
onTypedMessageSubmitted: ({
|
|
13
15
|
query
|
|
@@ -22,6 +24,7 @@ declare const useSalesAgentChatAPI: () => {
|
|
|
22
24
|
}: {
|
|
23
25
|
pageVisitCategory: PageVisitCategory;
|
|
24
26
|
}) => void;
|
|
27
|
+
logUserEvent: (event: UserEvent$1) => void;
|
|
25
28
|
onSuggestionClicked: (suggestion: Suggestion$1) => void;
|
|
26
29
|
onTypedMessageSubmitted: ({
|
|
27
30
|
query
|
|
@@ -32,4 +35,4 @@ declare const useSalesAgentChatAPI: () => {
|
|
|
32
35
|
};
|
|
33
36
|
//#endregion
|
|
34
37
|
export { SalesAgentChatAPI, useSalesAgentChatAPI };
|
|
35
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdEFQSS5kLnRzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9zYWxlc0FnZW50Q29udGV4dC9jaGF0QVBJLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGFnZVZpc2l0Q2F0ZWdvcnkgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgU3VnZ2VzdGlvbiwgVXNlckV2ZW50IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5leHBvcnQgaW50ZXJmYWNlIFNhbGVzQWdlbnRDaGF0QVBJIHtcbiAgICBsb2dQYWdlVmlzaXQ6ICh7IHBhZ2VWaXNpdENhdGVnb3J5IH06IHtcbiAgICAgICAgcGFnZVZpc2l0Q2F0ZWdvcnk6IFBhZ2VWaXNpdENhdGVnb3J5O1xuICAgIH0pID0+IHZvaWQ7XG4gICAgbG9nVXNlckV2ZW50OiAoZXZlbnQ6IFVzZXJFdmVudCkgPT4gdm9pZDtcbiAgICBvblN1Z2dlc3Rpb25DbGlja2VkOiAoc3VnZ2VzdGlvbjogU3VnZ2VzdGlvbikgPT4gdm9pZDtcbiAgICBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZDogKHsgcXVlcnkgfToge1xuICAgICAgICBxdWVyeTogc3RyaW5nO1xuICAgIH0pID0+IHZvaWQ7XG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQ6IChmb3JtUmVzcG9uc2U6IGFueSkgPT4gdm9pZDtcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZVNhbGVzQWdlbnRDaGF0QVBJOiAoKSA9PiB7XG4gICAgbG9nUGFnZVZpc2l0OiAoeyBwYWdlVmlzaXRDYXRlZ29yeSB9OiB7XG4gICAgICAgIHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeTtcbiAgICB9KSA9PiB2b2lkO1xuICAgIGxvZ1VzZXJFdmVudDogKGV2ZW50OiBVc2VyRXZlbnQpID0+IHZvaWQ7XG4gICAgb25TdWdnZXN0aW9uQ2xpY2tlZDogKHN1Z2dlc3Rpb246IFN1Z2dlc3Rpb24pID0+IHZvaWQ7XG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQ6ICh7IHF1ZXJ5IH06IHtcbiAgICAgICAgcXVlcnk6IHN0cmluZztcbiAgICB9KSA9PiB2b2lkO1xuICAgIG9uRm9ybVJlc3BvbnNlU3VibWl0dGVkOiAoKSA9PiB2b2lkO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFFQSxJQUFXLG9CQUFvQjtDQUFDO09BQUc7T0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBQ25DLElBQVcsdUJBQXVCO0NBQUM7T0FBTztPQUFBO09BQUE7T0FBQTtPQUFBO0NBQUEifQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { queueUserEventAtom } from "../../atoms/chat/messageQueue.js";
|
|
2
2
|
import { UserEventCategory } from "@spiffy-ai/commerce-api-client";
|
|
3
|
-
import { useCallback } from "react";
|
|
4
3
|
import { v4 } from "uuid";
|
|
4
|
+
import { useCallback } from "react";
|
|
5
5
|
import { useSetAtom } from "jotai";
|
|
6
6
|
|
|
7
7
|
//#region src/contexts/salesAgentContext/chatAPI.ts
|
|
@@ -19,12 +19,18 @@ const useSalesAgentChatAPI = () => {
|
|
|
19
19
|
}
|
|
20
20
|
});
|
|
21
21
|
}, [queueUserEvent]),
|
|
22
|
+
logUserEvent: useCallback((event) => {
|
|
23
|
+
queueUserEvent(event);
|
|
24
|
+
}, [queueUserEvent]),
|
|
22
25
|
onSuggestionClicked: useCallback((suggestion) => {
|
|
23
26
|
queueUserEvent({
|
|
24
27
|
eventId: v4(),
|
|
25
28
|
category: UserEventCategory.SuggestionClicked,
|
|
26
29
|
createdAt: (/* @__PURE__ */ new Date()).toISOString(),
|
|
27
|
-
attributes: {
|
|
30
|
+
attributes: {
|
|
31
|
+
suggestionId: suggestion.id,
|
|
32
|
+
content: suggestion.content
|
|
33
|
+
}
|
|
28
34
|
});
|
|
29
35
|
}, [queueUserEvent]),
|
|
30
36
|
onTypedMessageSubmitted: useCallback(({ query }) => {
|
|
@@ -41,4 +47,4 @@ const useSalesAgentChatAPI = () => {
|
|
|
41
47
|
|
|
42
48
|
//#endregion
|
|
43
49
|
export { useSalesAgentChatAPI };
|
|
44
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhdEFQSS5qcyIsIm5hbWVzIjpbInV1aWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvc2FsZXNBZ2VudENvbnRleHQvY2hhdEFQSS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBUaGlzIGNvbXBvbmVudCB3aWxsIGludGVyYWN0IHdpdGggdGhlIGJhY2tlbmQgQVBJIHRvIGdldCB0aGUgcmVzcG9uc2VzIGZyb20gdGhlIHNhbGVzIGFnZW50LlxuXG5pbXBvcnQgeyBQYWdlVmlzaXRDYXRlZ29yeSwgVXNlckV2ZW50Q2F0ZWdvcnkgfSBmcm9tICdAc3BpZmZ5LWFpL2NvbW1lcmNlLWFwaS1jbGllbnQnO1xuaW1wb3J0IHsgU3VnZ2VzdGlvbiwgVXNlckV2ZW50IH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgeyB1c2VTZXRBdG9tIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2sgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB2NCBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBxdWV1ZVVzZXJFdmVudEF0b20gfSBmcm9tICdzcmMvYXRvbXMvY2hhdC9tZXNzYWdlUXVldWUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNhbGVzQWdlbnRDaGF0QVBJIHtcbiAgbG9nUGFnZVZpc2l0OiAoeyBwYWdlVmlzaXRDYXRlZ29yeSB9OiB7IHBhZ2VWaXNpdENhdGVnb3J5OiBQYWdlVmlzaXRDYXRlZ29yeSB9KSA9PiB2b2lkO1xuICBsb2dVc2VyRXZlbnQ6IChldmVudDogVXNlckV2ZW50KSA9PiB2b2lkO1xuICBvblN1Z2dlc3Rpb25DbGlja2VkOiAoc3VnZ2VzdGlvbjogU3VnZ2VzdGlvbikgPT4gdm9pZDtcbiAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQ6ICh7IHF1ZXJ5IH06IHsgcXVlcnk6IHN0cmluZyB9KSA9PiB2b2lkO1xuICBvbkZvcm1SZXNwb25zZVN1Ym1pdHRlZDogKGZvcm1SZXNwb25zZTogYW55KSA9PiB2b2lkOyAvLyBUT0RPOiBGaWd1cmUgb3V0IHRoZSByaWdodCB0eXBlXG59XG5cbmV4cG9ydCBjb25zdCB1c2VTYWxlc0FnZW50Q2hhdEFQSSA9ICgpID0+IHtcbiAgLy8gVE9ETzogRWFjaCBvZiB0aGVzZSBmdW5jdGlvbnMgd2lsbCB0cmlnZ2VyIGJvdGggdGhlIG5lY2Vzc2FyeSBhbXBsaXR1ZGUgZXZlbnRzIGFuZCBpbml0aWF0ZSB0aGVcbiAgLy8gbmVjZXNzYXJ5IGFjdGlvbnMgdG8gdHJpZ2dlciB0aGUgYmFja2VuZCBBUElcbiAgY29uc3QgcXVldWVVc2VyRXZlbnQgPSB1c2VTZXRBdG9tKHF1ZXVlVXNlckV2ZW50QXRvbSk7XG5cbiAgY29uc3QgbG9nUGFnZVZpc2l0ID0gdXNlQ2FsbGJhY2soXG4gICAgKHsgcGFnZVZpc2l0Q2F0ZWdvcnkgfTogeyBwYWdlVmlzaXRDYXRlZ29yeTogUGFnZVZpc2l0Q2F0ZWdvcnkgfSkgPT4ge1xuICAgICAgY29uc3QgZXZlbnQ6IFVzZXJFdmVudCA9IHtcbiAgICAgICAgZXZlbnRJZDogdXVpZCgpLFxuICAgICAgICBjYXRlZ29yeTogVXNlckV2ZW50Q2F0ZWdvcnkuUGFnZVZpc2l0LFxuICAgICAgICBjcmVhdGVkQXQ6IG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSxcbiAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgIHVybDogd2luZG93LmxvY2F0aW9uLmhyZWYsXG4gICAgICAgICAgcGFnZVZpc2l0Q2F0ZWdvcnksXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgICAgcXVldWVVc2VyRXZlbnQoZXZlbnQpO1xuICAgIH0sXG4gICAgW3F1ZXVlVXNlckV2ZW50XSxcbiAgKTtcblxuICBjb25zdCBsb2dVc2VyRXZlbnQgPSB1c2VDYWxsYmFjayhcbiAgICAoZXZlbnQ6IFVzZXJFdmVudCkgPT4ge1xuICAgICAgcXVldWVVc2VyRXZlbnQoZXZlbnQpO1xuICAgIH0sXG4gICAgW3F1ZXVlVXNlckV2ZW50XSxcbiAgKTtcbiAgY29uc3Qgb25TdWdnZXN0aW9uQ2xpY2tlZCA9IHVzZUNhbGxiYWNrKFxuICAgIChzdWdnZXN0aW9uOiBTdWdnZXN0aW9uKSA9PiB7XG4gICAgICBjb25zdCBldmVudDogVXNlckV2ZW50ID0ge1xuICAgICAgICBldmVudElkOiB1dWlkKCksXG4gICAgICAgIGNhdGVnb3J5OiBVc2VyRXZlbnRDYXRlZ29yeS5TdWdnZXN0aW9uQ2xpY2tlZCxcbiAgICAgICAgY3JlYXRlZEF0OiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgICBzdWdnZXN0aW9uSWQ6IHN1Z2dlc3Rpb24uaWQsXG4gICAgICAgICAgY29udGVudDogc3VnZ2VzdGlvbi5jb250ZW50LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICAgIHF1ZXVlVXNlckV2ZW50KGV2ZW50KTtcbiAgICB9LFxuICAgIFtxdWV1ZVVzZXJFdmVudF0sXG4gICk7XG4gIGNvbnN0IG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkID0gdXNlQ2FsbGJhY2soXG4gICAgKHsgcXVlcnkgfTogeyBxdWVyeTogc3RyaW5nIH0pID0+IHtcbiAgICAgIGNvbnN0IGV2ZW50OiBVc2VyRXZlbnQgPSB7XG4gICAgICAgIGV2ZW50SWQ6IHV1aWQoKSxcbiAgICAgICAgY2F0ZWdvcnk6IFVzZXJFdmVudENhdGVnb3J5LlF1ZXJ5VHlwZWQsXG4gICAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKS50b0lTT1N0cmluZygpLFxuICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgcXVlcnksXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgICAgcXVldWVVc2VyRXZlbnQoZXZlbnQpO1xuICAgIH0sXG4gICAgW3F1ZXVlVXNlckV2ZW50XSxcbiAgKTtcbiAgY29uc3Qgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQgPSB1c2VDYWxsYmFjaygoKSA9PiB7XG4gICAgLy8gVE9ETzogSW1wbGVtZW50IHRoZSBmb3JtIHJlc3BvbnNlIHN1Ym1pdHRlZFxuICB9LCBbXSk7XG5cbiAgcmV0dXJuIHtcbiAgICBsb2dQYWdlVmlzaXQsXG4gICAgbG9nVXNlckV2ZW50LFxuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gIH07XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBaUJBLE1BQWEsNkJBQTZCO0NBR3hDLE1BQU0saUJBQWlCLFdBQVcsbUJBQW1CO0FBeURyRCxRQUFPO0VBQ0wsY0F4RG1CLGFBQ2xCLEVBQUUsd0JBQWtFO0FBVW5FLGtCQVR5QjtJQUN2QixTQUFTQSxJQUFNO0lBQ2YsVUFBVSxrQkFBa0I7SUFDNUIsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtJQUNuQyxZQUFZO0tBQ1YsS0FBSyxPQUFPLFNBQVM7S0FDckI7S0FDRDtJQUNGLENBQ29CO0tBRXZCLENBQUMsZUFBZSxDQUNqQjtFQTJDQyxjQXpDbUIsYUFDbEIsVUFBcUI7QUFDcEIsa0JBQWUsTUFBTTtLQUV2QixDQUFDLGVBQWUsQ0FDakI7RUFxQ0MscUJBcEMwQixhQUN6QixlQUEyQjtBQVUxQixrQkFUeUI7SUFDdkIsU0FBU0EsSUFBTTtJQUNmLFVBQVUsa0JBQWtCO0lBQzVCLDRCQUFXLElBQUksTUFBTSxFQUFDLGFBQWE7SUFDbkMsWUFBWTtLQUNWLGNBQWMsV0FBVztLQUN6QixTQUFTLFdBQVc7S0FDckI7SUFDRixDQUNvQjtLQUV2QixDQUFDLGVBQWUsQ0FDakI7RUF1QkMseUJBdEI4QixhQUM3QixFQUFFLFlBQStCO0FBU2hDLGtCQVJ5QjtJQUN2QixTQUFTQSxJQUFNO0lBQ2YsVUFBVSxrQkFBa0I7SUFDNUIsNEJBQVcsSUFBSSxNQUFNLEVBQUMsYUFBYTtJQUNuQyxZQUFZLEVBQ1YsT0FDRDtJQUNGLENBQ29CO0tBRXZCLENBQUMsZUFBZSxDQUNqQjtFQVVDLHlCQVQ4QixrQkFBa0IsSUFFL0MsRUFBRSxDQUFDO0VBUUwifQ==
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { SalesAgentChatAPI, useSalesAgentChatAPI } from "./chatAPI.cjs";
|
|
2
|
-
import { SalesAgentProvider, useSalesAgent } from "./salesAgentContext.cjs";
|
|
2
|
+
import { SalesAgent, SalesAgentProvider, useSalesAgent } from "./salesAgentContext.cjs";
|
|
3
3
|
import { PageVisitCategory, SuggestionCategory } from "@spiffy-ai/commerce-api-client";
|
|
4
|
-
export { PageVisitCategory, SalesAgentChatAPI, SalesAgentProvider, SuggestionCategory, useSalesAgent, useSalesAgentChatAPI };
|
|
4
|
+
export { PageVisitCategory, SalesAgent, SalesAgentChatAPI, SalesAgentProvider, SuggestionCategory, useSalesAgent, useSalesAgentChatAPI };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { SalesAgentChatAPI, useSalesAgentChatAPI } from "./chatAPI.js";
|
|
2
|
-
import { SalesAgentProvider, useSalesAgent } from "./salesAgentContext.js";
|
|
2
|
+
import { SalesAgent, SalesAgentProvider, useSalesAgent } from "./salesAgentContext.js";
|
|
3
3
|
import { PageVisitCategory, SuggestionCategory } from "@spiffy-ai/commerce-api-client";
|
|
4
|
-
export { PageVisitCategory, SalesAgentChatAPI, SalesAgentProvider, SuggestionCategory, useSalesAgent, useSalesAgentChatAPI };
|
|
4
|
+
export { PageVisitCategory, SalesAgent, SalesAgentChatAPI, SalesAgentProvider, SuggestionCategory, useSalesAgent, useSalesAgentChatAPI };
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
|
-
const
|
|
2
|
+
const require_message = require('../../application/models/message.cjs');
|
|
3
|
+
const require_atoms_chat_chatState = require('../../atoms/chat/chatState.cjs');
|
|
3
4
|
const require_messageQueue = require('../../atoms/chat/messageQueue.cjs');
|
|
4
5
|
const require_useSystemSettingsContext = require('../../hooks/SystemSettingsContext/useSystemSettingsContext.cjs');
|
|
5
6
|
require('../../hooks/SystemSettingsContext/index.cjs');
|
|
6
7
|
const require_chatAPI = require('./chatAPI.cjs');
|
|
7
8
|
const require_salesAgentService = require('./salesAgentService.cjs');
|
|
9
|
+
let __spiffy_ai_commerce_api_client = require("@spiffy-ai/commerce-api-client");
|
|
8
10
|
let react = require("react");
|
|
9
11
|
let jotai = require("jotai");
|
|
10
12
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
@@ -15,57 +17,96 @@ const SalesAgentProvider = ({ children }) => {
|
|
|
15
17
|
const userEvents = (0, jotai.useAtomValue)(require_messageQueue.userEventQueueAtom);
|
|
16
18
|
const userQueueEventCount = (0, jotai.useAtomValue)(require_messageQueue.userQueueEventCountAtom);
|
|
17
19
|
const markUserEventsProcessed = (0, jotai.useSetAtom)(require_messageQueue.processUserEventAtom);
|
|
20
|
+
const [isInitialized, setIsInitialized] = (0, jotai.useAtom)(require_atoms_chat_chatState.initializedAtom);
|
|
18
21
|
const settingsContext = require_useSystemSettingsContext.useSystemSettingsContext();
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
const [pendingMessage] = userEvents.slice(0, userQueueEventCount);
|
|
22
|
+
const setMessages = (0, jotai.useSetAtom)(require_atoms_chat_chatState.messagesAtom);
|
|
23
|
+
const { getStreamingResponses, createResponsePayload, getSuggestions, hydrateMessages } = require_salesAgentService.useSalesAgentService();
|
|
24
|
+
const sendMessagesToBackend = (0, react.useCallback)(async (requestPayload) => {
|
|
23
25
|
try {
|
|
24
|
-
const response = await getStreamingResponses(
|
|
25
|
-
|
|
26
|
-
generationParams: settingsContext.generationParams
|
|
27
|
-
}));
|
|
26
|
+
const response = await getStreamingResponses(requestPayload);
|
|
27
|
+
setIsInitialized(true);
|
|
28
28
|
console.log("response", response);
|
|
29
|
-
markUserEventsProcessed([
|
|
29
|
+
requestPayload.userEvents?.map((userEvent) => markUserEventsProcessed([userEvent.eventId]));
|
|
30
30
|
} catch (error) {
|
|
31
31
|
console.error("error sending message");
|
|
32
32
|
}
|
|
33
33
|
}, [
|
|
34
|
-
userEvents,
|
|
35
|
-
userQueueEventCount,
|
|
36
|
-
createResponsePayload,
|
|
37
|
-
settingsContext.generationParams,
|
|
38
34
|
getStreamingResponses,
|
|
35
|
+
setIsInitialized,
|
|
39
36
|
markUserEventsProcessed
|
|
40
37
|
]);
|
|
41
38
|
console.log("userQueueEventCount", userQueueEventCount);
|
|
42
39
|
console.log("userEvents", userEvents);
|
|
43
40
|
(0, react.useEffect)(() => {
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
41
|
+
console.log("SalesAgentProvider useEffect", userQueueEventCount, isInitialized, userEvents);
|
|
42
|
+
if (userQueueEventCount > 0) {
|
|
43
|
+
const payloadEvents = userEvents.slice(0, userQueueEventCount);
|
|
44
|
+
payloadEvents.forEach((userEvent) => {
|
|
45
|
+
if (userEvent && userEvent.category === __spiffy_ai_commerce_api_client.UserEventCategory.QueryTyped) {
|
|
46
|
+
const newMessage = {
|
|
47
|
+
id: userEvent.eventId,
|
|
48
|
+
role: require_message.MessageRole.User,
|
|
49
|
+
type: require_message.MessageType.QueryTyped,
|
|
50
|
+
createdAt: userEvent.createdAt,
|
|
51
|
+
metadata: { content: userEvent.attributes.query }
|
|
52
|
+
};
|
|
53
|
+
setMessages((current) => [...current, [newMessage]]);
|
|
54
|
+
}
|
|
55
|
+
if (userEvent && userEvent.category === __spiffy_ai_commerce_api_client.UserEventCategory.SuggestionClicked) {
|
|
56
|
+
const newMessage = {
|
|
57
|
+
id: userEvent.eventId,
|
|
58
|
+
role: require_message.MessageRole.User,
|
|
59
|
+
type: require_message.MessageType.QueryTyped,
|
|
60
|
+
createdAt: userEvent.createdAt,
|
|
61
|
+
metadata: { content: userEvent.attributes.content ?? "" }
|
|
62
|
+
};
|
|
63
|
+
setMessages((current) => [...current, [newMessage]]);
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
sendMessagesToBackend(createResponsePayload({
|
|
67
|
+
userEvents: payloadEvents,
|
|
68
|
+
generationParams: settingsContext.generationParams
|
|
69
|
+
}));
|
|
70
|
+
} else if (isInitialized) getSuggestions(createResponsePayload({
|
|
71
|
+
userEvents: [],
|
|
72
|
+
generationParams: settingsContext.generationParams
|
|
73
|
+
}));
|
|
74
|
+
}, [
|
|
75
|
+
createResponsePayload,
|
|
76
|
+
getSuggestions,
|
|
77
|
+
isInitialized,
|
|
78
|
+
setMessages,
|
|
79
|
+
sendMessagesToBackend,
|
|
80
|
+
settingsContext.generationParams,
|
|
81
|
+
userEvents,
|
|
82
|
+
userQueueEventCount
|
|
83
|
+
]);
|
|
84
|
+
(0, react.useEffect)(() => {
|
|
85
|
+
if (isInitialized) hydrateMessages();
|
|
86
|
+
}, [isInitialized, hydrateMessages]);
|
|
47
87
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SalesAgentContext.Provider, {
|
|
48
88
|
value: void 0,
|
|
49
89
|
children
|
|
50
90
|
});
|
|
51
91
|
};
|
|
52
92
|
const useSalesAgent = () => {
|
|
53
|
-
const messages = (0, jotai.useAtomValue)(
|
|
54
|
-
const suggestions = (0, jotai.useAtomValue)(
|
|
93
|
+
const messages = (0, jotai.useAtomValue)(require_atoms_chat_chatState.messagesAtom);
|
|
94
|
+
const suggestions = (0, jotai.useAtomValue)(require_atoms_chat_chatState.suggestionsAtom);
|
|
55
95
|
const pendingMessages = (0, jotai.useAtomValue)(require_messageQueue.userEventQueueAtom);
|
|
56
|
-
const isResponseStreaming =
|
|
57
|
-
const isPendingResponse =
|
|
58
|
-
const isInitialized =
|
|
59
|
-
const { logPageVisit, onSuggestionClicked, onTypedMessageSubmitted, onFormResponseSubmitted } = require_chatAPI.useSalesAgentChatAPI();
|
|
96
|
+
const isResponseStreaming = (0, jotai.useAtomValue)(require_atoms_chat_chatState.responseStreamingAtom);
|
|
97
|
+
const isPendingResponse = (0, jotai.useAtomValue)(require_atoms_chat_chatState.pendingResponseAtom);
|
|
98
|
+
const isInitialized = (0, jotai.useAtomValue)(require_atoms_chat_chatState.initializedAtom);
|
|
99
|
+
const { logPageVisit, logUserEvent, onSuggestionClicked, onTypedMessageSubmitted, onFormResponseSubmitted } = require_chatAPI.useSalesAgentChatAPI();
|
|
60
100
|
return (0, react.useMemo)(() => {
|
|
61
101
|
return {
|
|
62
102
|
messages,
|
|
63
103
|
suggestions,
|
|
64
104
|
pendingMessages,
|
|
105
|
+
isInitialized,
|
|
65
106
|
isResponseStreaming,
|
|
66
107
|
isPendingResponse,
|
|
67
|
-
isInitialized,
|
|
68
108
|
logPageVisit,
|
|
109
|
+
logUserEvent,
|
|
69
110
|
onSuggestionClicked,
|
|
70
111
|
onTypedMessageSubmitted,
|
|
71
112
|
onFormResponseSubmitted
|
|
@@ -74,10 +115,11 @@ const useSalesAgent = () => {
|
|
|
74
115
|
messages,
|
|
75
116
|
suggestions,
|
|
76
117
|
pendingMessages,
|
|
118
|
+
isInitialized,
|
|
77
119
|
isResponseStreaming,
|
|
78
120
|
isPendingResponse,
|
|
79
|
-
isInitialized,
|
|
80
121
|
logPageVisit,
|
|
122
|
+
logUserEvent,
|
|
81
123
|
onSuggestionClicked,
|
|
82
124
|
onTypedMessageSubmitted,
|
|
83
125
|
onFormResponseSubmitted
|
|
@@ -87,4 +129,4 @@ const useSalesAgent = () => {
|
|
|
87
129
|
//#endregion
|
|
88
130
|
exports.SalesAgentProvider = SalesAgentProvider;
|
|
89
131
|
exports.useSalesAgent = useSalesAgent;
|
|
90
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZXNBZ2VudENvbnRleHQuY2pzIiwibmFtZXMiOlsiU2FsZXNBZ2VudFByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdE5vZGUgfT4iLCJ1c2VyRXZlbnRRdWV1ZUF0b20iLCJ1c2VyUXVldWVFdmVudENvdW50QXRvbSIsInByb2Nlc3NVc2VyRXZlbnRBdG9tIiwidXNlU3lzdGVtU2V0dGluZ3NDb250ZXh0IiwidXNlU2FsZXNBZ2VudFNlcnZpY2UiLCJtZXNzYWdlc0F0b20iLCJzdWdnZXN0aW9uc0F0b20iLCJ1c2VTYWxlc0FnZW50Q2hhdEFQSSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9zYWxlc0FnZW50Q29udGV4dC9zYWxlc0FnZW50Q29udGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQXRvbVZhbHVlLCB1c2VTZXRBdG9tIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgUmVhY3ROb2RlLCBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvbWVzc2FnZSc7XG5pbXBvcnQgeyBTdWdnZXN0aW9uLCBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IG1lc3NhZ2VzQXRvbSwgc3VnZ2VzdGlvbnNBdG9tIH0gZnJvbSAnc3JjL2F0b21zL2NoYXQvY2hhdFN0YXRlJztcbmltcG9ydCB7XG4gIHByb2Nlc3NVc2VyRXZlbnRBdG9tLFxuICB1c2VyRXZlbnRRdWV1ZUF0b20sXG4gIHVzZXJRdWV1ZUV2ZW50Q291bnRBdG9tLFxufSBmcm9tICdzcmMvYXRvbXMvY2hhdC9tZXNzYWdlUXVldWUnO1xuaW1wb3J0IHsgdXNlU3lzdGVtU2V0dGluZ3NDb250ZXh0IH0gZnJvbSAnc3JjL2hvb2tzL1N5c3RlbVNldHRpbmdzQ29udGV4dCc7XG5pbXBvcnQgeyBTYWxlc0FnZW50Q2hhdEFQSSwgdXNlU2FsZXNBZ2VudENoYXRBUEkgfSBmcm9tICcuL2NoYXRBUEknO1xuaW1wb3J0IHsgdXNlU2FsZXNBZ2VudFNlcnZpY2UgfSBmcm9tICcuL3NhbGVzQWdlbnRTZXJ2aWNlJztcblxuaW50ZXJmYWNlIFNhbGVzQWdlbnQgZXh0ZW5kcyBTYWxlc0FnZW50Q2hhdEFQSSB7XG4gIC8vIE1lc3NhZ2VzIGFyZSB0aGUgZnVsbCBsaXN0IG9mIGFsbCB0dXJuc1xuICBtZXNzYWdlczogTWVzc2FnZVtdW107XG4gIC8vIFBlbmRpbmcgbWVzc2FnZXMgYXJlIG1lc3NhZ2VzIHRoYXQgdGhlIHVzZXIgaGFzIGNsaWNrZWQvdHlwZWQgYnV0IGhhdmUgbm90IHlldCBiZWVuIHNlbnQgdG8gdGhlIGJhY2tlbmQuXG4gIHBlbmRpbmdNZXNzYWdlczogVXNlckV2ZW50W107XG4gIC8vIFN1Z2dlc3Rpb25zIGFyZSB0aGUgbGlzdCBvZiBzdWdnZXN0aW9ucyB0aGF0IHRoZSB1c2VyIGNhbiBjbGljayBvbiBpbiByZXNwb25zZSB0byB0aGUgbW9zdCByZWNlbnQgbWVzc2FnZSBmcm9tIHRoZSBiYWNrZW5kXG4gIHN1Z2dlc3Rpb25zOiBTdWdnZXN0aW9uW107XG4gIC8vIFRydWUgd2hpbGUgdGhlIHJlc3BvbnNlIGlzIHN0cmVhbWluZyBmcm9tIHRoZSBiYWNrZW5kXG4gIGlzUmVzcG9uc2VTdHJlYW1pbmc6IGJvb2xlYW47XG4gIC8vIFRydWUgd2hpbGUgdGhlIHJlc3BvbnNlIGlzIHBlbmRpbmcgZnJvbSB0aGUgYmFja2VuZFxuICBpc1BlbmRpbmdSZXNwb25zZTogYm9vbGVhbjtcbiAgLy8gVHJ1ZSB3aGVuIHRoZSBzYWxlcyBhZ2VudCBpcyBpbml0aWFsaXplZFxuICBpc0luaXRpYWxpemVkOiBib29sZWFuO1xufVxuXG5jb25zdCBTYWxlc0FnZW50Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8U2FsZXNBZ2VudCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuZXhwb3J0IGNvbnN0IFNhbGVzQWdlbnRQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3ROb2RlIH0+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCB1c2VyRXZlbnRzID0gdXNlQXRvbVZhbHVlKHVzZXJFdmVudFF1ZXVlQXRvbSk7XG4gIGNvbnN0IHVzZXJRdWV1ZUV2ZW50Q291bnQgPSB1c2VBdG9tVmFsdWUodXNlclF1ZXVlRXZlbnRDb3VudEF0b20pO1xuICBjb25zdCBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZCA9IHVzZVNldEF0b20ocHJvY2Vzc1VzZXJFdmVudEF0b20pO1xuICBjb25zdCBzZXR0aW5nc0NvbnRleHQgPSB1c2VTeXN0ZW1TZXR0aW5nc0NvbnRleHQoKTtcblxuICBjb25zdCB7IGdldFN0cmVhbWluZ1Jlc3BvbnNlcywgY3JlYXRlUmVzcG9uc2VQYXlsb2FkIH0gPSB1c2VTYWxlc0FnZW50U2VydmljZSgpO1xuXG4gIC8vIFRPRE86IEVuc3VyZSB0aGF0IGFtcGxpdHVkZSBldmVudHMgYXJlIGJlaW5nIGVtaXR0ZWRcblxuICAvLyBUT0RPOiBBZGQgc3VwcG9ydCBmb3IgdGhlIHN0cmVhbWluZyByZXNwb25zZXMgdG8gZnVuY3Rpb25cblxuICAvLyBUT0RPOiBBZGQgc3VwcG9ydCBmb3IgdGhlIGh5ZHJhdGlvbiBvZiB0aGUgbWVzc2FnZXMgZnJvbSB0aGUgYmFja2VuZCBvbiBpbml0aWFsaXphdGlvblxuICBjb25zdCBzZW5kTWVzc2FnZXNUb0JhY2tlbmQgPSB1c2VDYWxsYmFjayhhc3luYyAoKSA9PiB7XG4gICAgLy8gRmFzdCBleGl0IGlmIHRoZXJlIGFyZSBubyBwZW5kaW5nIG1lc3NhZ2VzXG4gICAgaWYgKHVzZXJFdmVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFRPRE86IFN1cHBvcnQgc2VuZGluZyBtdWx0aXBsZSBtZXNzYWdlcyB0byB0aGUgYmFja2VuZCBpbiBvbmUgcmVxdWVzdFxuICAgIGNvbnN0IFtwZW5kaW5nTWVzc2FnZV0gPSB1c2VyRXZlbnRzLnNsaWNlKDAsIHVzZXJRdWV1ZUV2ZW50Q291bnQpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXF1ZXN0UGF5bG9hZCA9IGNyZWF0ZVJlc3BvbnNlUGF5bG9hZCh7XG4gICAgICAgIHVzZXJFdmVudHM6IFtwZW5kaW5nTWVzc2FnZV0sXG4gICAgICAgIGdlbmVyYXRpb25QYXJhbXM6IHNldHRpbmdzQ29udGV4dC5nZW5lcmF0aW9uUGFyYW1zLFxuICAgICAgfSk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGdldFN0cmVhbWluZ1Jlc3BvbnNlcyhyZXF1ZXN0UGF5bG9hZCk7XG5cbiAgICAgIGNvbnNvbGUubG9nKCdyZXNwb25zZScsIHJlc3BvbnNlKTtcbiAgICAgIC8vIFJlbW92ZSB0aGUgcGVuZGluZyBtZXNzYWdlIGZyb20gdGhlIHVzZXIgZXZlbnRzXG4gICAgICBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZChbcGVuZGluZ01lc3NhZ2UuZXZlbnRJZF0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdlcnJvciBzZW5kaW5nIG1lc3NhZ2UnKTtcbiAgICB9XG4gIH0sIFtcbiAgICB1c2VyRXZlbnRzLFxuICAgIHVzZXJRdWV1ZUV2ZW50Q291bnQsXG4gICAgY3JlYXRlUmVzcG9uc2VQYXlsb2FkLFxuICAgIHNldHRpbmdzQ29udGV4dC5nZW5lcmF0aW9uUGFyYW1zLFxuICAgIGdldFN0cmVhbWluZ1Jlc3BvbnNlcyxcbiAgICBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZCxcbiAgXSk7XG5cbiAgY29uc29sZS5sb2coJ3VzZXJRdWV1ZUV2ZW50Q291bnQnLCB1c2VyUXVldWVFdmVudENvdW50KTtcbiAgY29uc29sZS5sb2coJ3VzZXJFdmVudHMnLCB1c2VyRXZlbnRzKTtcblxuICAvLyBUaGlzIGlzIHRoZSBwcmltYXJ5IGV2ZW50IGxvb3AgZm9yIGNvbW11bmljYXRpbmcgd2l0aCB0aGUgYmFja2VuZCBBUElcbiAgLy8gSXQgd2lsbCBiZSB0cmlnZ2VyZWQgd2hlbiB0aGVyZSBhcmUgcGVuZGluZyBtZXNzYWdlcyB0byBiZSBzZW50IHRvIHRoZSBiYWNrZW5kXG4gIC8vIEl0IHdpbGwgYmUgcmVzcG9uc2libGUgZm9yIHNlbmRpbmcgdGhlIG1lc3NhZ2VzIHRvIHRoZSBiYWNrZW5kIGFuZCByZWNlaXZpbmcgdGhlIHJlc3BvbnNlc1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh1c2VyUXVldWVFdmVudENvdW50ID4gMCkge1xuICAgICAgc2VuZE1lc3NhZ2VzVG9CYWNrZW5kKCk7XG4gICAgfVxuICAgIC8vIFRPRE86IEFkZCBhIHN1Z2dlc3Rpb24gcmV0cmlldmFsIGhlcmUgKGRvbid0IGdldCBzdWdnZXN0aW9ucyB1bmxlc3MgdGhlIGV2ZW50IHF1ZXVlIGlzIGVtcHR5KVxuICAgIGNvbnNvbGUubG9nKCdTYWxlc0FnZW50UHJvdmlkZXIgdXNlRWZmZWN0Jyk7XG4gIH0sIFtzZW5kTWVzc2FnZXNUb0JhY2tlbmQsIHVzZXJRdWV1ZUV2ZW50Q291bnRdKTtcblxuICByZXR1cm4gPFNhbGVzQWdlbnRDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt1bmRlZmluZWR9PntjaGlsZHJlbn08L1NhbGVzQWdlbnRDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VTYWxlc0FnZW50ID0gKCk6IFNhbGVzQWdlbnQgPT4ge1xuICBjb25zdCBtZXNzYWdlcyA9IHVzZUF0b21WYWx1ZShtZXNzYWdlc0F0b20pO1xuICBjb25zdCBzdWdnZXN0aW9ucyA9IHVzZUF0b21WYWx1ZShzdWdnZXN0aW9uc0F0b20pO1xuICBjb25zdCBwZW5kaW5nTWVzc2FnZXMgPSB1c2VBdG9tVmFsdWUodXNlckV2ZW50UXVldWVBdG9tKTtcbiAgY29uc3QgaXNSZXNwb25zZVN0cmVhbWluZyA9IGZhbHNlOyAvLyB1c2VBdG9tVmFsdWUoaXNSZXNwb25zZVN0cmVhbWluZ0F0b20pO1xuICBjb25zdCBpc1BlbmRpbmdSZXNwb25zZSA9IGZhbHNlOyAvLyB1c2VBdG9tVmFsdWUoaXNQZW5kaW5nUmVzcG9uc2VBdG9tKTtcbiAgY29uc3QgaXNJbml0aWFsaXplZCA9IGZhbHNlOyAvLyB1c2VBdG9tVmFsdWUoaXNJbml0aWFsaXplZEF0b20pO1xuXG4gIGNvbnN0IHsgbG9nUGFnZVZpc2l0LCBvblN1Z2dlc3Rpb25DbGlja2VkLCBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZCwgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQgfSA9XG4gICAgdXNlU2FsZXNBZ2VudENoYXRBUEkoKTtcblxuICBjb25zdCBzYWxlc0FnZW50OiBTYWxlc0FnZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG1lc3NhZ2VzLFxuICAgICAgc3VnZ2VzdGlvbnMsXG4gICAgICBwZW5kaW5nTWVzc2FnZXMsXG4gICAgICBpc1Jlc3BvbnNlU3RyZWFtaW5nLFxuICAgICAgaXNQZW5kaW5nUmVzcG9uc2UsXG4gICAgICBpc0luaXRpYWxpemVkLFxuICAgICAgbG9nUGFnZVZpc2l0LFxuICAgICAgb25TdWdnZXN0aW9uQ2xpY2tlZCxcbiAgICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkLFxuICAgICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gICAgfTtcbiAgfSwgW1xuICAgIG1lc3NhZ2VzLFxuICAgIHN1Z2dlc3Rpb25zLFxuICAgIHBlbmRpbmdNZXNzYWdlcyxcbiAgICBpc1Jlc3BvbnNlU3RyZWFtaW5nLFxuICAgIGlzUGVuZGluZ1Jlc3BvbnNlLFxuICAgIGlzSW5pdGlhbGl6ZWQsXG4gICAgbG9nUGFnZVZpc2l0LFxuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gIF0pO1xuICByZXR1cm4gc2FsZXNBZ2VudDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQTZCQSxNQUFNLDZDQUEwRCxPQUFVO0FBRTFFLE1BQWFBLHNCQUF5RCxFQUFFLGVBQWU7Q0FDckYsTUFBTSxxQ0FBMEJDLHdDQUFtQjtDQUNuRCxNQUFNLDhDQUFtQ0MsNkNBQXdCO0NBQ2pFLE1BQU0sZ0RBQXFDQywwQ0FBcUI7Q0FDaEUsTUFBTSxrQkFBa0JDLDJEQUEwQjtDQUVsRCxNQUFNLEVBQUUsdUJBQXVCLDBCQUEwQkMsZ0RBQXNCO0NBTy9FLE1BQU0sK0NBQW9DLFlBQVk7QUFFcEQsTUFBSSxXQUFXLFdBQVcsRUFDeEI7RUFHRixNQUFNLENBQUMsa0JBQWtCLFdBQVcsTUFBTSxHQUFHLG9CQUFvQjtBQUNqRSxNQUFJO0dBS0YsTUFBTSxXQUFXLE1BQU0sc0JBSkEsc0JBQXNCO0lBQzNDLFlBQVksQ0FBQyxlQUFlO0lBQzVCLGtCQUFrQixnQkFBZ0I7SUFDbkMsQ0FBQyxDQUMwRDtBQUU1RCxXQUFRLElBQUksWUFBWSxTQUFTO0FBRWpDLDJCQUF3QixDQUFDLGVBQWUsUUFBUSxDQUFDO1dBQzFDLE9BQU87QUFDZCxXQUFRLE1BQU0sd0JBQXdCOztJQUV2QztFQUNEO0VBQ0E7RUFDQTtFQUNBLGdCQUFnQjtFQUNoQjtFQUNBO0VBQ0QsQ0FBQztBQUVGLFNBQVEsSUFBSSx1QkFBdUIsb0JBQW9CO0FBQ3ZELFNBQVEsSUFBSSxjQUFjLFdBQVc7QUFLckMsNEJBQWdCO0FBQ2QsTUFBSSxzQkFBc0IsRUFDeEIsd0JBQXVCO0FBR3pCLFVBQVEsSUFBSSwrQkFBK0I7SUFDMUMsQ0FBQyx1QkFBdUIsb0JBQW9CLENBQUM7QUFFaEQsUUFBTywyQ0FBQyxrQkFBa0I7RUFBUyxPQUFPO0VBQVk7R0FBc0M7O0FBRzlGLE1BQWEsc0JBQWtDO0NBQzdDLE1BQU0sbUNBQXdCQywrQkFBYTtDQUMzQyxNQUFNLHNDQUEyQkMsa0NBQWdCO0NBQ2pELE1BQU0sMENBQStCTix3Q0FBbUI7Q0FDeEQsTUFBTSxzQkFBc0I7Q0FDNUIsTUFBTSxvQkFBb0I7Q0FDMUIsTUFBTSxnQkFBZ0I7Q0FFdEIsTUFBTSxFQUFFLGNBQWMscUJBQXFCLHlCQUF5Qiw0QkFDbEVPLHNDQUFzQjtBQTJCeEIsaUNBekI2QztBQUMzQyxTQUFPO0dBQ0w7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDRDtJQUNBO0VBQ0Q7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDRCxDQUFDIn0=
|
|
132
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZXNBZ2VudENvbnRleHQuY2pzIiwibmFtZXMiOlsiU2FsZXNBZ2VudFByb3ZpZGVyOiBSZWFjdC5GQzx7IGNoaWxkcmVuOiBSZWFjdE5vZGUgfT4iLCJ1c2VyRXZlbnRRdWV1ZUF0b20iLCJ1c2VyUXVldWVFdmVudENvdW50QXRvbSIsInByb2Nlc3NVc2VyRXZlbnRBdG9tIiwiaW5pdGlhbGl6ZWRBdG9tIiwidXNlU3lzdGVtU2V0dGluZ3NDb250ZXh0IiwibWVzc2FnZXNBdG9tIiwidXNlU2FsZXNBZ2VudFNlcnZpY2UiLCJVc2VyRXZlbnRDYXRlZ29yeSIsIm5ld01lc3NhZ2U6IE1lc3NhZ2UiLCJNZXNzYWdlUm9sZSIsIk1lc3NhZ2VUeXBlIiwic3VnZ2VzdGlvbnNBdG9tIiwicmVzcG9uc2VTdHJlYW1pbmdBdG9tIiwicGVuZGluZ1Jlc3BvbnNlQXRvbSIsInVzZVNhbGVzQWdlbnRDaGF0QVBJIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3NhbGVzQWdlbnRDb250ZXh0L3NhbGVzQWdlbnRDb250ZXh0LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB1c2VBdG9tLCB1c2VBdG9tVmFsdWUsIHVzZVNldEF0b20gfSBmcm9tICdqb3RhaSc7XG5pbXBvcnQgeyBSZWFjdE5vZGUsIGNyZWF0ZUNvbnRleHQsIHVzZUNhbGxiYWNrLCB1c2VFZmZlY3QsIHVzZU1lbW8gfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBVc2VyRXZlbnRDYXRlZ29yeSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBNZXNzYWdlLCBNZXNzYWdlUm9sZSwgTWVzc2FnZVR5cGUgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzL21lc3NhZ2UnO1xuaW1wb3J0IHsgTmV4dE1lc3NhZ2VSZXF1ZXN0LCBTdWdnZXN0aW9uLCBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7XG4gIGluaXRpYWxpemVkQXRvbSxcbiAgbWVzc2FnZXNBdG9tLFxuICBwZW5kaW5nUmVzcG9uc2VBdG9tLFxuICByZXNwb25zZVN0cmVhbWluZ0F0b20sXG4gIHN1Z2dlc3Rpb25zQXRvbSxcbn0gZnJvbSAnc3JjL2F0b21zL2NoYXQvY2hhdFN0YXRlJztcbmltcG9ydCB7XG4gIHByb2Nlc3NVc2VyRXZlbnRBdG9tLFxuICB1c2VyRXZlbnRRdWV1ZUF0b20sXG4gIHVzZXJRdWV1ZUV2ZW50Q291bnRBdG9tLFxufSBmcm9tICdzcmMvYXRvbXMvY2hhdC9tZXNzYWdlUXVldWUnO1xuaW1wb3J0IHsgdXNlU3lzdGVtU2V0dGluZ3NDb250ZXh0IH0gZnJvbSAnc3JjL2hvb2tzL1N5c3RlbVNldHRpbmdzQ29udGV4dCc7XG5pbXBvcnQgeyBTYWxlc0FnZW50Q2hhdEFQSSwgdXNlU2FsZXNBZ2VudENoYXRBUEkgfSBmcm9tICcuL2NoYXRBUEknO1xuaW1wb3J0IHsgdXNlU2FsZXNBZ2VudFNlcnZpY2UgfSBmcm9tICcuL3NhbGVzQWdlbnRTZXJ2aWNlJztcblxuZXhwb3J0IGludGVyZmFjZSBTYWxlc0FnZW50IGV4dGVuZHMgU2FsZXNBZ2VudENoYXRBUEkge1xuICAvLyBNZXNzYWdlcyBhcmUgdGhlIGZ1bGwgbGlzdCBvZiBhbGwgdHVybnNcbiAgbWVzc2FnZXM6IE1lc3NhZ2VbXVtdO1xuICAvLyBQZW5kaW5nIG1lc3NhZ2VzIGFyZSBtZXNzYWdlcyB0aGF0IHRoZSB1c2VyIGhhcyBjbGlja2VkL3R5cGVkIGJ1dCBoYXZlIG5vdCB5ZXQgYmVlbiBzZW50IHRvIHRoZSBiYWNrZW5kLlxuICBwZW5kaW5nTWVzc2FnZXM6IFVzZXJFdmVudFtdO1xuICAvLyBTdWdnZXN0aW9ucyBhcmUgdGhlIGxpc3Qgb2Ygc3VnZ2VzdGlvbnMgdGhhdCB0aGUgdXNlciBjYW4gY2xpY2sgb24gaW4gcmVzcG9uc2UgdG8gdGhlIG1vc3QgcmVjZW50IG1lc3NhZ2UgZnJvbSB0aGUgYmFja2VuZFxuICBzdWdnZXN0aW9uczogU3VnZ2VzdGlvbltdO1xuICAvLyBUcnVlIHdoaWxlIHRoZSByZXNwb25zZSBpcyBzdHJlYW1pbmcgZnJvbSB0aGUgYmFja2VuZFxuICBpc1Jlc3BvbnNlU3RyZWFtaW5nOiBib29sZWFuO1xuICAvLyBUcnVlIHdoaWxlIHRoZSByZXNwb25zZSBpcyBwZW5kaW5nIGZyb20gdGhlIGJhY2tlbmRcbiAgaXNQZW5kaW5nUmVzcG9uc2U6IGJvb2xlYW47XG4gIC8vIFRydWUgd2hlbiB0aGUgc2FsZXMgYWdlbnQgaXMgaW5pdGlhbGl6ZWRcbiAgaXNJbml0aWFsaXplZDogYm9vbGVhbjtcbn1cblxuY29uc3QgU2FsZXNBZ2VudENvbnRleHQgPSBjcmVhdGVDb250ZXh0PFNhbGVzQWdlbnQgfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cbmV4cG9ydCBjb25zdCBTYWxlc0FnZW50UHJvdmlkZXI6IFJlYWN0LkZDPHsgY2hpbGRyZW46IFJlYWN0Tm9kZSB9PiA9ICh7IGNoaWxkcmVuIH0pID0+IHtcbiAgY29uc3QgdXNlckV2ZW50cyA9IHVzZUF0b21WYWx1ZSh1c2VyRXZlbnRRdWV1ZUF0b20pO1xuICBjb25zdCB1c2VyUXVldWVFdmVudENvdW50ID0gdXNlQXRvbVZhbHVlKHVzZXJRdWV1ZUV2ZW50Q291bnRBdG9tKTtcbiAgY29uc3QgbWFya1VzZXJFdmVudHNQcm9jZXNzZWQgPSB1c2VTZXRBdG9tKHByb2Nlc3NVc2VyRXZlbnRBdG9tKTtcbiAgY29uc3QgW2lzSW5pdGlhbGl6ZWQsIHNldElzSW5pdGlhbGl6ZWRdID0gdXNlQXRvbShpbml0aWFsaXplZEF0b20pO1xuICBjb25zdCBzZXR0aW5nc0NvbnRleHQgPSB1c2VTeXN0ZW1TZXR0aW5nc0NvbnRleHQoKTtcbiAgY29uc3Qgc2V0TWVzc2FnZXMgPSB1c2VTZXRBdG9tKG1lc3NhZ2VzQXRvbSk7XG5cbiAgY29uc3QgeyBnZXRTdHJlYW1pbmdSZXNwb25zZXMsIGNyZWF0ZVJlc3BvbnNlUGF5bG9hZCwgZ2V0U3VnZ2VzdGlvbnMsIGh5ZHJhdGVNZXNzYWdlcyB9ID1cbiAgICB1c2VTYWxlc0FnZW50U2VydmljZSgpO1xuXG4gIC8vIFRPRE86IEVuc3VyZSB0aGF0IGFtcGxpdHVkZSBldmVudHMgYXJlIGJlaW5nIGVtaXR0ZWRcblxuICAvLyBUT0RPOiBBZGQgc3VwcG9ydCBmb3IgdGhlIHN0cmVhbWluZyByZXNwb25zZXMgdG8gZnVuY3Rpb25cblxuICAvLyBUT0RPOiBBZGQgc3VwcG9ydCBmb3IgdGhlIGh5ZHJhdGlvbiBvZiB0aGUgbWVzc2FnZXMgZnJvbSB0aGUgYmFja2VuZCBvbiBpbml0aWFsaXphdGlvblxuICBjb25zdCBzZW5kTWVzc2FnZXNUb0JhY2tlbmQgPSB1c2VDYWxsYmFjayhcbiAgICBhc3luYyAocmVxdWVzdFBheWxvYWQ6IE5leHRNZXNzYWdlUmVxdWVzdCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBnZXRTdHJlYW1pbmdSZXNwb25zZXMocmVxdWVzdFBheWxvYWQpO1xuICAgICAgICBzZXRJc0luaXRpYWxpemVkKHRydWUpO1xuXG4gICAgICAgIGNvbnNvbGUubG9nKCdyZXNwb25zZScsIHJlc3BvbnNlKTtcbiAgICAgICAgLy8gUmVtb3ZlIHRoZSBwZW5kaW5nIG1lc3NhZ2UgZnJvbSB0aGUgdXNlciBldmVudHNcbiAgICAgICAgcmVxdWVzdFBheWxvYWQudXNlckV2ZW50cz8ubWFwKHVzZXJFdmVudCA9PiBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZChbdXNlckV2ZW50LmV2ZW50SWRdKSk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdlcnJvciBzZW5kaW5nIG1lc3NhZ2UnKTtcbiAgICAgIH1cbiAgICB9LFxuICAgIFtnZXRTdHJlYW1pbmdSZXNwb25zZXMsIHNldElzSW5pdGlhbGl6ZWQsIG1hcmtVc2VyRXZlbnRzUHJvY2Vzc2VkXSxcbiAgKTtcblxuICBjb25zb2xlLmxvZygndXNlclF1ZXVlRXZlbnRDb3VudCcsIHVzZXJRdWV1ZUV2ZW50Q291bnQpO1xuICBjb25zb2xlLmxvZygndXNlckV2ZW50cycsIHVzZXJFdmVudHMpO1xuXG4gIC8vIFRoaXMgaXMgdGhlIHByaW1hcnkgZXZlbnQgbG9vcCBmb3IgY29tbXVuaWNhdGluZyB3aXRoIHRoZSBiYWNrZW5kIEFQSVxuICAvLyBJdCB3aWxsIGJlIHRyaWdnZXJlZCB3aGVuIHRoZXJlIGFyZSBwZW5kaW5nIG1lc3NhZ2VzIHRvIGJlIHNlbnQgdG8gdGhlIGJhY2tlbmRcbiAgLy8gSXQgd2lsbCBiZSByZXNwb25zaWJsZSBmb3Igc2VuZGluZyB0aGUgbWVzc2FnZXMgdG8gdGhlIGJhY2tlbmQgYW5kIHJlY2VpdmluZyB0aGUgcmVzcG9uc2VzXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29uc29sZS5sb2coJ1NhbGVzQWdlbnRQcm92aWRlciB1c2VFZmZlY3QnLCB1c2VyUXVldWVFdmVudENvdW50LCBpc0luaXRpYWxpemVkLCB1c2VyRXZlbnRzKTtcbiAgICBpZiAodXNlclF1ZXVlRXZlbnRDb3VudCA+IDApIHtcbiAgICAgIGNvbnN0IHBheWxvYWRFdmVudHMgPSB1c2VyRXZlbnRzLnNsaWNlKDAsIHVzZXJRdWV1ZUV2ZW50Q291bnQpO1xuXG4gICAgICBwYXlsb2FkRXZlbnRzLmZvckVhY2godXNlckV2ZW50ID0+IHtcbiAgICAgICAgaWYgKHVzZXJFdmVudCAmJiB1c2VyRXZlbnQuY2F0ZWdvcnkgPT09IFVzZXJFdmVudENhdGVnb3J5LlF1ZXJ5VHlwZWQpIHtcbiAgICAgICAgICBjb25zdCBuZXdNZXNzYWdlOiBNZXNzYWdlID0ge1xuICAgICAgICAgICAgaWQ6IHVzZXJFdmVudC5ldmVudElkLFxuICAgICAgICAgICAgcm9sZTogTWVzc2FnZVJvbGUuVXNlcixcbiAgICAgICAgICAgIHR5cGU6IE1lc3NhZ2VUeXBlLlF1ZXJ5VHlwZWQsXG4gICAgICAgICAgICBjcmVhdGVkQXQ6IHVzZXJFdmVudC5jcmVhdGVkQXQsXG4gICAgICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgICAgICBjb250ZW50OiB1c2VyRXZlbnQuYXR0cmlidXRlcy5xdWVyeSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfTtcbiAgICAgICAgICBzZXRNZXNzYWdlcyhjdXJyZW50ID0+IFsuLi5jdXJyZW50LCBbbmV3TWVzc2FnZV1dKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodXNlckV2ZW50ICYmIHVzZXJFdmVudC5jYXRlZ29yeSA9PT0gVXNlckV2ZW50Q2F0ZWdvcnkuU3VnZ2VzdGlvbkNsaWNrZWQpIHtcbiAgICAgICAgICBjb25zdCBuZXdNZXNzYWdlOiBNZXNzYWdlID0ge1xuICAgICAgICAgICAgaWQ6IHVzZXJFdmVudC5ldmVudElkLFxuICAgICAgICAgICAgcm9sZTogTWVzc2FnZVJvbGUuVXNlcixcbiAgICAgICAgICAgIHR5cGU6IE1lc3NhZ2VUeXBlLlF1ZXJ5VHlwZWQsXG4gICAgICAgICAgICBjcmVhdGVkQXQ6IHVzZXJFdmVudC5jcmVhdGVkQXQsXG4gICAgICAgICAgICBtZXRhZGF0YToge1xuICAgICAgICAgICAgICBjb250ZW50OiB1c2VyRXZlbnQuYXR0cmlidXRlcy5jb250ZW50ID8/ICcnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHNldE1lc3NhZ2VzKGN1cnJlbnQgPT4gWy4uLmN1cnJlbnQsIFtuZXdNZXNzYWdlXV0pO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgc2VuZE1lc3NhZ2VzVG9CYWNrZW5kKFxuICAgICAgICBjcmVhdGVSZXNwb25zZVBheWxvYWQoe1xuICAgICAgICAgIHVzZXJFdmVudHM6IHBheWxvYWRFdmVudHMsXG4gICAgICAgICAgZ2VuZXJhdGlvblBhcmFtczogc2V0dGluZ3NDb250ZXh0LmdlbmVyYXRpb25QYXJhbXMsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKGlzSW5pdGlhbGl6ZWQpIHtcbiAgICAgIGdldFN1Z2dlc3Rpb25zKFxuICAgICAgICBjcmVhdGVSZXNwb25zZVBheWxvYWQoe1xuICAgICAgICAgIHVzZXJFdmVudHM6IFtdLFxuICAgICAgICAgIGdlbmVyYXRpb25QYXJhbXM6IHNldHRpbmdzQ29udGV4dC5nZW5lcmF0aW9uUGFyYW1zLFxuICAgICAgICB9KSxcbiAgICAgICk7XG4gICAgfVxuICB9LCBbXG4gICAgY3JlYXRlUmVzcG9uc2VQYXlsb2FkLFxuICAgIGdldFN1Z2dlc3Rpb25zLFxuICAgIGlzSW5pdGlhbGl6ZWQsXG4gICAgc2V0TWVzc2FnZXMsXG4gICAgc2VuZE1lc3NhZ2VzVG9CYWNrZW5kLFxuICAgIHNldHRpbmdzQ29udGV4dC5nZW5lcmF0aW9uUGFyYW1zLFxuICAgIHVzZXJFdmVudHMsXG4gICAgdXNlclF1ZXVlRXZlbnRDb3VudCxcbiAgXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoaXNJbml0aWFsaXplZCkge1xuICAgICAgLy8gUmVoeWRyYXRlIGFueSBtZXNzYWdlcyBmcm9tIHRoZSBiYWNrZW5kXG4gICAgICBoeWRyYXRlTWVzc2FnZXMoKTtcbiAgICB9XG4gIH0sIFtpc0luaXRpYWxpemVkLCBoeWRyYXRlTWVzc2FnZXNdKTtcblxuICByZXR1cm4gPFNhbGVzQWdlbnRDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt1bmRlZmluZWR9PntjaGlsZHJlbn08L1NhbGVzQWdlbnRDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VTYWxlc0FnZW50ID0gKCk6IFNhbGVzQWdlbnQgPT4ge1xuICBjb25zdCBtZXNzYWdlcyA9IHVzZUF0b21WYWx1ZShtZXNzYWdlc0F0b20pO1xuICBjb25zdCBzdWdnZXN0aW9ucyA9IHVzZUF0b21WYWx1ZShzdWdnZXN0aW9uc0F0b20pO1xuICBjb25zdCBwZW5kaW5nTWVzc2FnZXMgPSB1c2VBdG9tVmFsdWUodXNlckV2ZW50UXVldWVBdG9tKTtcbiAgY29uc3QgaXNSZXNwb25zZVN0cmVhbWluZyA9IHVzZUF0b21WYWx1ZShyZXNwb25zZVN0cmVhbWluZ0F0b20pO1xuICBjb25zdCBpc1BlbmRpbmdSZXNwb25zZSA9IHVzZUF0b21WYWx1ZShwZW5kaW5nUmVzcG9uc2VBdG9tKTtcbiAgY29uc3QgaXNJbml0aWFsaXplZCA9IHVzZUF0b21WYWx1ZShpbml0aWFsaXplZEF0b20pO1xuICBjb25zdCB7XG4gICAgbG9nUGFnZVZpc2l0LFxuICAgIGxvZ1VzZXJFdmVudCxcbiAgICBvblN1Z2dlc3Rpb25DbGlja2VkLFxuICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkLFxuICAgIG9uRm9ybVJlc3BvbnNlU3VibWl0dGVkLFxuICB9ID0gdXNlU2FsZXNBZ2VudENoYXRBUEkoKTtcblxuICBjb25zdCBzYWxlc0FnZW50OiBTYWxlc0FnZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG1lc3NhZ2VzLFxuICAgICAgc3VnZ2VzdGlvbnMsXG4gICAgICBwZW5kaW5nTWVzc2FnZXMsXG4gICAgICBpc0luaXRpYWxpemVkLFxuICAgICAgaXNSZXNwb25zZVN0cmVhbWluZyxcbiAgICAgIGlzUGVuZGluZ1Jlc3BvbnNlLFxuICAgICAgbG9nUGFnZVZpc2l0LFxuICAgICAgbG9nVXNlckV2ZW50LFxuICAgICAgb25TdWdnZXN0aW9uQ2xpY2tlZCxcbiAgICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkLFxuICAgICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gICAgfTtcbiAgfSwgW1xuICAgIG1lc3NhZ2VzLFxuICAgIHN1Z2dlc3Rpb25zLFxuICAgIHBlbmRpbmdNZXNzYWdlcyxcbiAgICBpc0luaXRpYWxpemVkLFxuICAgIGlzUmVzcG9uc2VTdHJlYW1pbmcsXG4gICAgaXNQZW5kaW5nUmVzcG9uc2UsXG4gICAgbG9nUGFnZVZpc2l0LFxuICAgIGxvZ1VzZXJFdmVudCxcbiAgICBvblN1Z2dlc3Rpb25DbGlja2VkLFxuICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkLFxuICAgIG9uRm9ybVJlc3BvbnNlU3VibWl0dGVk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
|
|
@@ -18,5 +18,5 @@ declare const SalesAgentProvider: React.FC<{
|
|
|
18
18
|
}>;
|
|
19
19
|
declare const useSalesAgent: () => SalesAgent;
|
|
20
20
|
//#endregion
|
|
21
|
-
export { SalesAgentProvider, useSalesAgent };
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
21
|
+
export { SalesAgent, SalesAgentProvider, useSalesAgent };
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZXNBZ2VudENvbnRleHQuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbnRleHRzL3NhbGVzQWdlbnRDb250ZXh0L3NhbGVzQWdlbnRDb250ZXh0LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvbWVzc2FnZSc7XG5pbXBvcnQgeyBTdWdnZXN0aW9uLCBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IFNhbGVzQWdlbnRDaGF0QVBJIH0gZnJvbSAnLi9jaGF0QVBJJztcbmV4cG9ydCBpbnRlcmZhY2UgU2FsZXNBZ2VudCBleHRlbmRzIFNhbGVzQWdlbnRDaGF0QVBJIHtcbiAgICBtZXNzYWdlczogTWVzc2FnZVtdW107XG4gICAgcGVuZGluZ01lc3NhZ2VzOiBVc2VyRXZlbnRbXTtcbiAgICBzdWdnZXN0aW9uczogU3VnZ2VzdGlvbltdO1xuICAgIGlzUmVzcG9uc2VTdHJlYW1pbmc6IGJvb2xlYW47XG4gICAgaXNQZW5kaW5nUmVzcG9uc2U6IGJvb2xlYW47XG4gICAgaXNJbml0aWFsaXplZDogYm9vbGVhbjtcbn1cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IFNhbGVzQWdlbnRQcm92aWRlcjogUmVhY3QuRkM8e1xuICAgIGNoaWxkcmVuOiBSZWFjdE5vZGU7XG59PjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZVNhbGVzQWdlbnQ6ICgpID0+IFNhbGVzQWdlbnQ7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxJQUFXLGFBQWE7Q0FBQztPQUFXO09BQWU7T0FBRztPQUFBO0NBQUE7QUFDdEQsSUFBVyxxQkFBYztDQUFBO09BQUE7T0FBQSxNQUFBO0NBQUE7QUFDekIsSUFBVyxnQkFBZ0IsQ0FBQyxXQUFJLFdBQUEifQ==
|
|
@@ -18,5 +18,5 @@ declare const SalesAgentProvider: React.FC<{
|
|
|
18
18
|
}>;
|
|
19
19
|
declare const useSalesAgent: () => SalesAgent;
|
|
20
20
|
//#endregion
|
|
21
|
-
export { SalesAgentProvider, useSalesAgent };
|
|
22
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
21
|
+
export { SalesAgent, SalesAgentProvider, useSalesAgent };
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZXNBZ2VudENvbnRleHQuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvc2FsZXNBZ2VudENvbnRleHQvc2FsZXNBZ2VudENvbnRleHQuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBNZXNzYWdlIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscy9tZXNzYWdlJztcbmltcG9ydCB7IFN1Z2dlc3Rpb24sIFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHsgU2FsZXNBZ2VudENoYXRBUEkgfSBmcm9tICcuL2NoYXRBUEknO1xuZXhwb3J0IGludGVyZmFjZSBTYWxlc0FnZW50IGV4dGVuZHMgU2FsZXNBZ2VudENoYXRBUEkge1xuICAgIG1lc3NhZ2VzOiBNZXNzYWdlW11bXTtcbiAgICBwZW5kaW5nTWVzc2FnZXM6IFVzZXJFdmVudFtdO1xuICAgIHN1Z2dlc3Rpb25zOiBTdWdnZXN0aW9uW107XG4gICAgaXNSZXNwb25zZVN0cmVhbWluZzogYm9vbGVhbjtcbiAgICBpc1BlbmRpbmdSZXNwb25zZTogYm9vbGVhbjtcbiAgICBpc0luaXRpYWxpemVkOiBib29sZWFuO1xufVxuZXhwb3J0IGRlY2xhcmUgY29uc3QgU2FsZXNBZ2VudFByb3ZpZGVyOiBSZWFjdC5GQzx7XG4gICAgY2hpbGRyZW46IFJlYWN0Tm9kZTtcbn0+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlU2FsZXNBZ2VudDogKCkgPT4gU2FsZXNBZ2VudDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUlBLElBQVcsYUFBYTtDQUFDO09BQVc7T0FBZTtPQUFHO09BQUE7Q0FBQTtBQUN0RCxJQUFXLHFCQUFjO0NBQUE7T0FBQTtPQUFBLE1BQUE7Q0FBQTtBQUN6QixJQUFXLGdCQUFnQixDQUFDLFdBQUksV0FBQSJ9
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { MessageRole, MessageType } from "../../application/models/message.js";
|
|
2
|
+
import { initializedAtom, messagesAtom, pendingResponseAtom, responseStreamingAtom, suggestionsAtom } from "../../atoms/chat/chatState.js";
|
|
2
3
|
import { processUserEventAtom, userEventQueueAtom, userQueueEventCountAtom } from "../../atoms/chat/messageQueue.js";
|
|
3
4
|
import { useSystemSettingsContext } from "../../hooks/SystemSettingsContext/useSystemSettingsContext.js";
|
|
4
5
|
import "../../hooks/SystemSettingsContext/index.js";
|
|
5
6
|
import { useSalesAgentChatAPI } from "./chatAPI.js";
|
|
6
7
|
import { useSalesAgentService } from "./salesAgentService.js";
|
|
8
|
+
import { UserEventCategory } from "@spiffy-ai/commerce-api-client";
|
|
7
9
|
import { createContext, useCallback, useEffect, useMemo } from "react";
|
|
8
|
-
import { useAtomValue, useSetAtom } from "jotai";
|
|
10
|
+
import { useAtom, useAtomValue, useSetAtom } from "jotai";
|
|
9
11
|
import { jsx } from "react/jsx-runtime";
|
|
10
12
|
|
|
11
13
|
//#region src/contexts/salesAgentContext/salesAgentContext.tsx
|
|
@@ -14,35 +16,73 @@ const SalesAgentProvider = ({ children }) => {
|
|
|
14
16
|
const userEvents = useAtomValue(userEventQueueAtom);
|
|
15
17
|
const userQueueEventCount = useAtomValue(userQueueEventCountAtom);
|
|
16
18
|
const markUserEventsProcessed = useSetAtom(processUserEventAtom);
|
|
19
|
+
const [isInitialized, setIsInitialized] = useAtom(initializedAtom);
|
|
17
20
|
const settingsContext = useSystemSettingsContext();
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
|
|
21
|
-
const [pendingMessage] = userEvents.slice(0, userQueueEventCount);
|
|
21
|
+
const setMessages = useSetAtom(messagesAtom);
|
|
22
|
+
const { getStreamingResponses, createResponsePayload, getSuggestions, hydrateMessages } = useSalesAgentService();
|
|
23
|
+
const sendMessagesToBackend = useCallback(async (requestPayload) => {
|
|
22
24
|
try {
|
|
23
|
-
const response = await getStreamingResponses(
|
|
24
|
-
|
|
25
|
-
generationParams: settingsContext.generationParams
|
|
26
|
-
}));
|
|
25
|
+
const response = await getStreamingResponses(requestPayload);
|
|
26
|
+
setIsInitialized(true);
|
|
27
27
|
console.log("response", response);
|
|
28
|
-
markUserEventsProcessed([
|
|
28
|
+
requestPayload.userEvents?.map((userEvent) => markUserEventsProcessed([userEvent.eventId]));
|
|
29
29
|
} catch (error) {
|
|
30
30
|
console.error("error sending message");
|
|
31
31
|
}
|
|
32
32
|
}, [
|
|
33
|
-
userEvents,
|
|
34
|
-
userQueueEventCount,
|
|
35
|
-
createResponsePayload,
|
|
36
|
-
settingsContext.generationParams,
|
|
37
33
|
getStreamingResponses,
|
|
34
|
+
setIsInitialized,
|
|
38
35
|
markUserEventsProcessed
|
|
39
36
|
]);
|
|
40
37
|
console.log("userQueueEventCount", userQueueEventCount);
|
|
41
38
|
console.log("userEvents", userEvents);
|
|
42
39
|
useEffect(() => {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
40
|
+
console.log("SalesAgentProvider useEffect", userQueueEventCount, isInitialized, userEvents);
|
|
41
|
+
if (userQueueEventCount > 0) {
|
|
42
|
+
const payloadEvents = userEvents.slice(0, userQueueEventCount);
|
|
43
|
+
payloadEvents.forEach((userEvent) => {
|
|
44
|
+
if (userEvent && userEvent.category === UserEventCategory.QueryTyped) {
|
|
45
|
+
const newMessage = {
|
|
46
|
+
id: userEvent.eventId,
|
|
47
|
+
role: MessageRole.User,
|
|
48
|
+
type: MessageType.QueryTyped,
|
|
49
|
+
createdAt: userEvent.createdAt,
|
|
50
|
+
metadata: { content: userEvent.attributes.query }
|
|
51
|
+
};
|
|
52
|
+
setMessages((current) => [...current, [newMessage]]);
|
|
53
|
+
}
|
|
54
|
+
if (userEvent && userEvent.category === UserEventCategory.SuggestionClicked) {
|
|
55
|
+
const newMessage = {
|
|
56
|
+
id: userEvent.eventId,
|
|
57
|
+
role: MessageRole.User,
|
|
58
|
+
type: MessageType.QueryTyped,
|
|
59
|
+
createdAt: userEvent.createdAt,
|
|
60
|
+
metadata: { content: userEvent.attributes.content ?? "" }
|
|
61
|
+
};
|
|
62
|
+
setMessages((current) => [...current, [newMessage]]);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
sendMessagesToBackend(createResponsePayload({
|
|
66
|
+
userEvents: payloadEvents,
|
|
67
|
+
generationParams: settingsContext.generationParams
|
|
68
|
+
}));
|
|
69
|
+
} else if (isInitialized) getSuggestions(createResponsePayload({
|
|
70
|
+
userEvents: [],
|
|
71
|
+
generationParams: settingsContext.generationParams
|
|
72
|
+
}));
|
|
73
|
+
}, [
|
|
74
|
+
createResponsePayload,
|
|
75
|
+
getSuggestions,
|
|
76
|
+
isInitialized,
|
|
77
|
+
setMessages,
|
|
78
|
+
sendMessagesToBackend,
|
|
79
|
+
settingsContext.generationParams,
|
|
80
|
+
userEvents,
|
|
81
|
+
userQueueEventCount
|
|
82
|
+
]);
|
|
83
|
+
useEffect(() => {
|
|
84
|
+
if (isInitialized) hydrateMessages();
|
|
85
|
+
}, [isInitialized, hydrateMessages]);
|
|
46
86
|
return /* @__PURE__ */ jsx(SalesAgentContext.Provider, {
|
|
47
87
|
value: void 0,
|
|
48
88
|
children
|
|
@@ -52,19 +92,20 @@ const useSalesAgent = () => {
|
|
|
52
92
|
const messages = useAtomValue(messagesAtom);
|
|
53
93
|
const suggestions = useAtomValue(suggestionsAtom);
|
|
54
94
|
const pendingMessages = useAtomValue(userEventQueueAtom);
|
|
55
|
-
const isResponseStreaming =
|
|
56
|
-
const isPendingResponse =
|
|
57
|
-
const isInitialized =
|
|
58
|
-
const { logPageVisit, onSuggestionClicked, onTypedMessageSubmitted, onFormResponseSubmitted } = useSalesAgentChatAPI();
|
|
95
|
+
const isResponseStreaming = useAtomValue(responseStreamingAtom);
|
|
96
|
+
const isPendingResponse = useAtomValue(pendingResponseAtom);
|
|
97
|
+
const isInitialized = useAtomValue(initializedAtom);
|
|
98
|
+
const { logPageVisit, logUserEvent, onSuggestionClicked, onTypedMessageSubmitted, onFormResponseSubmitted } = useSalesAgentChatAPI();
|
|
59
99
|
return useMemo(() => {
|
|
60
100
|
return {
|
|
61
101
|
messages,
|
|
62
102
|
suggestions,
|
|
63
103
|
pendingMessages,
|
|
104
|
+
isInitialized,
|
|
64
105
|
isResponseStreaming,
|
|
65
106
|
isPendingResponse,
|
|
66
|
-
isInitialized,
|
|
67
107
|
logPageVisit,
|
|
108
|
+
logUserEvent,
|
|
68
109
|
onSuggestionClicked,
|
|
69
110
|
onTypedMessageSubmitted,
|
|
70
111
|
onFormResponseSubmitted
|
|
@@ -73,10 +114,11 @@ const useSalesAgent = () => {
|
|
|
73
114
|
messages,
|
|
74
115
|
suggestions,
|
|
75
116
|
pendingMessages,
|
|
117
|
+
isInitialized,
|
|
76
118
|
isResponseStreaming,
|
|
77
119
|
isPendingResponse,
|
|
78
|
-
isInitialized,
|
|
79
120
|
logPageVisit,
|
|
121
|
+
logUserEvent,
|
|
80
122
|
onSuggestionClicked,
|
|
81
123
|
onTypedMessageSubmitted,
|
|
82
124
|
onFormResponseSubmitted
|
|
@@ -85,4 +127,4 @@ const useSalesAgent = () => {
|
|
|
85
127
|
|
|
86
128
|
//#endregion
|
|
87
129
|
export { SalesAgentProvider, useSalesAgent };
|
|
88
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZXNBZ2VudENvbnRleHQuanMiLCJuYW1lcyI6WyJTYWxlc0FnZW50UHJvdmlkZXI6IFJlYWN0LkZDPHsgY2hpbGRyZW46IFJlYWN0Tm9kZSB9PiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb250ZXh0cy9zYWxlc0FnZW50Q29udGV4dC9zYWxlc0FnZW50Q29udGV4dC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQXRvbVZhbHVlLCB1c2VTZXRBdG9tIH0gZnJvbSAnam90YWknO1xuaW1wb3J0IHsgUmVhY3ROb2RlLCBjcmVhdGVDb250ZXh0LCB1c2VDYWxsYmFjaywgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgTWVzc2FnZSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvbWVzc2FnZSc7XG5pbXBvcnQgeyBTdWdnZXN0aW9uLCBVc2VyRXZlbnQgfSBmcm9tICdzcmMvYXBwbGljYXRpb24vbW9kZWxzJztcbmltcG9ydCB7IG1lc3NhZ2VzQXRvbSwgc3VnZ2VzdGlvbnNBdG9tIH0gZnJvbSAnc3JjL2F0b21zL2NoYXQvY2hhdFN0YXRlJztcbmltcG9ydCB7XG4gIHByb2Nlc3NVc2VyRXZlbnRBdG9tLFxuICB1c2VyRXZlbnRRdWV1ZUF0b20sXG4gIHVzZXJRdWV1ZUV2ZW50Q291bnRBdG9tLFxufSBmcm9tICdzcmMvYXRvbXMvY2hhdC9tZXNzYWdlUXVldWUnO1xuaW1wb3J0IHsgdXNlU3lzdGVtU2V0dGluZ3NDb250ZXh0IH0gZnJvbSAnc3JjL2hvb2tzL1N5c3RlbVNldHRpbmdzQ29udGV4dCc7XG5pbXBvcnQgeyBTYWxlc0FnZW50Q2hhdEFQSSwgdXNlU2FsZXNBZ2VudENoYXRBUEkgfSBmcm9tICcuL2NoYXRBUEknO1xuaW1wb3J0IHsgdXNlU2FsZXNBZ2VudFNlcnZpY2UgfSBmcm9tICcuL3NhbGVzQWdlbnRTZXJ2aWNlJztcblxuaW50ZXJmYWNlIFNhbGVzQWdlbnQgZXh0ZW5kcyBTYWxlc0FnZW50Q2hhdEFQSSB7XG4gIC8vIE1lc3NhZ2VzIGFyZSB0aGUgZnVsbCBsaXN0IG9mIGFsbCB0dXJuc1xuICBtZXNzYWdlczogTWVzc2FnZVtdW107XG4gIC8vIFBlbmRpbmcgbWVzc2FnZXMgYXJlIG1lc3NhZ2VzIHRoYXQgdGhlIHVzZXIgaGFzIGNsaWNrZWQvdHlwZWQgYnV0IGhhdmUgbm90IHlldCBiZWVuIHNlbnQgdG8gdGhlIGJhY2tlbmQuXG4gIHBlbmRpbmdNZXNzYWdlczogVXNlckV2ZW50W107XG4gIC8vIFN1Z2dlc3Rpb25zIGFyZSB0aGUgbGlzdCBvZiBzdWdnZXN0aW9ucyB0aGF0IHRoZSB1c2VyIGNhbiBjbGljayBvbiBpbiByZXNwb25zZSB0byB0aGUgbW9zdCByZWNlbnQgbWVzc2FnZSBmcm9tIHRoZSBiYWNrZW5kXG4gIHN1Z2dlc3Rpb25zOiBTdWdnZXN0aW9uW107XG4gIC8vIFRydWUgd2hpbGUgdGhlIHJlc3BvbnNlIGlzIHN0cmVhbWluZyBmcm9tIHRoZSBiYWNrZW5kXG4gIGlzUmVzcG9uc2VTdHJlYW1pbmc6IGJvb2xlYW47XG4gIC8vIFRydWUgd2hpbGUgdGhlIHJlc3BvbnNlIGlzIHBlbmRpbmcgZnJvbSB0aGUgYmFja2VuZFxuICBpc1BlbmRpbmdSZXNwb25zZTogYm9vbGVhbjtcbiAgLy8gVHJ1ZSB3aGVuIHRoZSBzYWxlcyBhZ2VudCBpcyBpbml0aWFsaXplZFxuICBpc0luaXRpYWxpemVkOiBib29sZWFuO1xufVxuXG5jb25zdCBTYWxlc0FnZW50Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8U2FsZXNBZ2VudCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuZXhwb3J0IGNvbnN0IFNhbGVzQWdlbnRQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3ROb2RlIH0+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCB1c2VyRXZlbnRzID0gdXNlQXRvbVZhbHVlKHVzZXJFdmVudFF1ZXVlQXRvbSk7XG4gIGNvbnN0IHVzZXJRdWV1ZUV2ZW50Q291bnQgPSB1c2VBdG9tVmFsdWUodXNlclF1ZXVlRXZlbnRDb3VudEF0b20pO1xuICBjb25zdCBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZCA9IHVzZVNldEF0b20ocHJvY2Vzc1VzZXJFdmVudEF0b20pO1xuICBjb25zdCBzZXR0aW5nc0NvbnRleHQgPSB1c2VTeXN0ZW1TZXR0aW5nc0NvbnRleHQoKTtcblxuICBjb25zdCB7IGdldFN0cmVhbWluZ1Jlc3BvbnNlcywgY3JlYXRlUmVzcG9uc2VQYXlsb2FkIH0gPSB1c2VTYWxlc0FnZW50U2VydmljZSgpO1xuXG4gIC8vIFRPRE86IEVuc3VyZSB0aGF0IGFtcGxpdHVkZSBldmVudHMgYXJlIGJlaW5nIGVtaXR0ZWRcblxuICAvLyBUT0RPOiBBZGQgc3VwcG9ydCBmb3IgdGhlIHN0cmVhbWluZyByZXNwb25zZXMgdG8gZnVuY3Rpb25cblxuICAvLyBUT0RPOiBBZGQgc3VwcG9ydCBmb3IgdGhlIGh5ZHJhdGlvbiBvZiB0aGUgbWVzc2FnZXMgZnJvbSB0aGUgYmFja2VuZCBvbiBpbml0aWFsaXphdGlvblxuICBjb25zdCBzZW5kTWVzc2FnZXNUb0JhY2tlbmQgPSB1c2VDYWxsYmFjayhhc3luYyAoKSA9PiB7XG4gICAgLy8gRmFzdCBleGl0IGlmIHRoZXJlIGFyZSBubyBwZW5kaW5nIG1lc3NhZ2VzXG4gICAgaWYgKHVzZXJFdmVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIC8vIFRPRE86IFN1cHBvcnQgc2VuZGluZyBtdWx0aXBsZSBtZXNzYWdlcyB0byB0aGUgYmFja2VuZCBpbiBvbmUgcmVxdWVzdFxuICAgIGNvbnN0IFtwZW5kaW5nTWVzc2FnZV0gPSB1c2VyRXZlbnRzLnNsaWNlKDAsIHVzZXJRdWV1ZUV2ZW50Q291bnQpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXF1ZXN0UGF5bG9hZCA9IGNyZWF0ZVJlc3BvbnNlUGF5bG9hZCh7XG4gICAgICAgIHVzZXJFdmVudHM6IFtwZW5kaW5nTWVzc2FnZV0sXG4gICAgICAgIGdlbmVyYXRpb25QYXJhbXM6IHNldHRpbmdzQ29udGV4dC5nZW5lcmF0aW9uUGFyYW1zLFxuICAgICAgfSk7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGdldFN0cmVhbWluZ1Jlc3BvbnNlcyhyZXF1ZXN0UGF5bG9hZCk7XG5cbiAgICAgIGNvbnNvbGUubG9nKCdyZXNwb25zZScsIHJlc3BvbnNlKTtcbiAgICAgIC8vIFJlbW92ZSB0aGUgcGVuZGluZyBtZXNzYWdlIGZyb20gdGhlIHVzZXIgZXZlbnRzXG4gICAgICBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZChbcGVuZGluZ01lc3NhZ2UuZXZlbnRJZF0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdlcnJvciBzZW5kaW5nIG1lc3NhZ2UnKTtcbiAgICB9XG4gIH0sIFtcbiAgICB1c2VyRXZlbnRzLFxuICAgIHVzZXJRdWV1ZUV2ZW50Q291bnQsXG4gICAgY3JlYXRlUmVzcG9uc2VQYXlsb2FkLFxuICAgIHNldHRpbmdzQ29udGV4dC5nZW5lcmF0aW9uUGFyYW1zLFxuICAgIGdldFN0cmVhbWluZ1Jlc3BvbnNlcyxcbiAgICBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZCxcbiAgXSk7XG5cbiAgY29uc29sZS5sb2coJ3VzZXJRdWV1ZUV2ZW50Q291bnQnLCB1c2VyUXVldWVFdmVudENvdW50KTtcbiAgY29uc29sZS5sb2coJ3VzZXJFdmVudHMnLCB1c2VyRXZlbnRzKTtcblxuICAvLyBUaGlzIGlzIHRoZSBwcmltYXJ5IGV2ZW50IGxvb3AgZm9yIGNvbW11bmljYXRpbmcgd2l0aCB0aGUgYmFja2VuZCBBUElcbiAgLy8gSXQgd2lsbCBiZSB0cmlnZ2VyZWQgd2hlbiB0aGVyZSBhcmUgcGVuZGluZyBtZXNzYWdlcyB0byBiZSBzZW50IHRvIHRoZSBiYWNrZW5kXG4gIC8vIEl0IHdpbGwgYmUgcmVzcG9uc2libGUgZm9yIHNlbmRpbmcgdGhlIG1lc3NhZ2VzIHRvIHRoZSBiYWNrZW5kIGFuZCByZWNlaXZpbmcgdGhlIHJlc3BvbnNlc1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmICh1c2VyUXVldWVFdmVudENvdW50ID4gMCkge1xuICAgICAgc2VuZE1lc3NhZ2VzVG9CYWNrZW5kKCk7XG4gICAgfVxuICAgIC8vIFRPRE86IEFkZCBhIHN1Z2dlc3Rpb24gcmV0cmlldmFsIGhlcmUgKGRvbid0IGdldCBzdWdnZXN0aW9ucyB1bmxlc3MgdGhlIGV2ZW50IHF1ZXVlIGlzIGVtcHR5KVxuICAgIGNvbnNvbGUubG9nKCdTYWxlc0FnZW50UHJvdmlkZXIgdXNlRWZmZWN0Jyk7XG4gIH0sIFtzZW5kTWVzc2FnZXNUb0JhY2tlbmQsIHVzZXJRdWV1ZUV2ZW50Q291bnRdKTtcblxuICByZXR1cm4gPFNhbGVzQWdlbnRDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXt1bmRlZmluZWR9PntjaGlsZHJlbn08L1NhbGVzQWdlbnRDb250ZXh0LlByb3ZpZGVyPjtcbn07XG5cbmV4cG9ydCBjb25zdCB1c2VTYWxlc0FnZW50ID0gKCk6IFNhbGVzQWdlbnQgPT4ge1xuICBjb25zdCBtZXNzYWdlcyA9IHVzZUF0b21WYWx1ZShtZXNzYWdlc0F0b20pO1xuICBjb25zdCBzdWdnZXN0aW9ucyA9IHVzZUF0b21WYWx1ZShzdWdnZXN0aW9uc0F0b20pO1xuICBjb25zdCBwZW5kaW5nTWVzc2FnZXMgPSB1c2VBdG9tVmFsdWUodXNlckV2ZW50UXVldWVBdG9tKTtcbiAgY29uc3QgaXNSZXNwb25zZVN0cmVhbWluZyA9IGZhbHNlOyAvLyB1c2VBdG9tVmFsdWUoaXNSZXNwb25zZVN0cmVhbWluZ0F0b20pO1xuICBjb25zdCBpc1BlbmRpbmdSZXNwb25zZSA9IGZhbHNlOyAvLyB1c2VBdG9tVmFsdWUoaXNQZW5kaW5nUmVzcG9uc2VBdG9tKTtcbiAgY29uc3QgaXNJbml0aWFsaXplZCA9IGZhbHNlOyAvLyB1c2VBdG9tVmFsdWUoaXNJbml0aWFsaXplZEF0b20pO1xuXG4gIGNvbnN0IHsgbG9nUGFnZVZpc2l0LCBvblN1Z2dlc3Rpb25DbGlja2VkLCBvblR5cGVkTWVzc2FnZVN1Ym1pdHRlZCwgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQgfSA9XG4gICAgdXNlU2FsZXNBZ2VudENoYXRBUEkoKTtcblxuICBjb25zdCBzYWxlc0FnZW50OiBTYWxlc0FnZW50ID0gdXNlTWVtbygoKSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG1lc3NhZ2VzLFxuICAgICAgc3VnZ2VzdGlvbnMsXG4gICAgICBwZW5kaW5nTWVzc2FnZXMsXG4gICAgICBpc1Jlc3BvbnNlU3RyZWFtaW5nLFxuICAgICAgaXNQZW5kaW5nUmVzcG9uc2UsXG4gICAgICBpc0luaXRpYWxpemVkLFxuICAgICAgbG9nUGFnZVZpc2l0LFxuICAgICAgb25TdWdnZXN0aW9uQ2xpY2tlZCxcbiAgICAgIG9uVHlwZWRNZXNzYWdlU3VibWl0dGVkLFxuICAgICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gICAgfTtcbiAgfSwgW1xuICAgIG1lc3NhZ2VzLFxuICAgIHN1Z2dlc3Rpb25zLFxuICAgIHBlbmRpbmdNZXNzYWdlcyxcbiAgICBpc1Jlc3BvbnNlU3RyZWFtaW5nLFxuICAgIGlzUGVuZGluZ1Jlc3BvbnNlLFxuICAgIGlzSW5pdGlhbGl6ZWQsXG4gICAgbG9nUGFnZVZpc2l0LFxuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gIF0pO1xuICByZXR1cm4gc2FsZXNBZ2VudDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBNkJBLE1BQU0sb0JBQW9CLGNBQXNDLE9BQVU7QUFFMUUsTUFBYUEsc0JBQXlELEVBQUUsZUFBZTtDQUNyRixNQUFNLGFBQWEsYUFBYSxtQkFBbUI7Q0FDbkQsTUFBTSxzQkFBc0IsYUFBYSx3QkFBd0I7Q0FDakUsTUFBTSwwQkFBMEIsV0FBVyxxQkFBcUI7Q0FDaEUsTUFBTSxrQkFBa0IsMEJBQTBCO0NBRWxELE1BQU0sRUFBRSx1QkFBdUIsMEJBQTBCLHNCQUFzQjtDQU8vRSxNQUFNLHdCQUF3QixZQUFZLFlBQVk7QUFFcEQsTUFBSSxXQUFXLFdBQVcsRUFDeEI7RUFHRixNQUFNLENBQUMsa0JBQWtCLFdBQVcsTUFBTSxHQUFHLG9CQUFvQjtBQUNqRSxNQUFJO0dBS0YsTUFBTSxXQUFXLE1BQU0sc0JBSkEsc0JBQXNCO0lBQzNDLFlBQVksQ0FBQyxlQUFlO0lBQzVCLGtCQUFrQixnQkFBZ0I7SUFDbkMsQ0FBQyxDQUMwRDtBQUU1RCxXQUFRLElBQUksWUFBWSxTQUFTO0FBRWpDLDJCQUF3QixDQUFDLGVBQWUsUUFBUSxDQUFDO1dBQzFDLE9BQU87QUFDZCxXQUFRLE1BQU0sd0JBQXdCOztJQUV2QztFQUNEO0VBQ0E7RUFDQTtFQUNBLGdCQUFnQjtFQUNoQjtFQUNBO0VBQ0QsQ0FBQztBQUVGLFNBQVEsSUFBSSx1QkFBdUIsb0JBQW9CO0FBQ3ZELFNBQVEsSUFBSSxjQUFjLFdBQVc7QUFLckMsaUJBQWdCO0FBQ2QsTUFBSSxzQkFBc0IsRUFDeEIsd0JBQXVCO0FBR3pCLFVBQVEsSUFBSSwrQkFBK0I7SUFDMUMsQ0FBQyx1QkFBdUIsb0JBQW9CLENBQUM7QUFFaEQsUUFBTyxvQkFBQyxrQkFBa0I7RUFBUyxPQUFPO0VBQVk7R0FBc0M7O0FBRzlGLE1BQWEsc0JBQWtDO0NBQzdDLE1BQU0sV0FBVyxhQUFhLGFBQWE7Q0FDM0MsTUFBTSxjQUFjLGFBQWEsZ0JBQWdCO0NBQ2pELE1BQU0sa0JBQWtCLGFBQWEsbUJBQW1CO0NBQ3hELE1BQU0sc0JBQXNCO0NBQzVCLE1BQU0sb0JBQW9CO0NBQzFCLE1BQU0sZ0JBQWdCO0NBRXRCLE1BQU0sRUFBRSxjQUFjLHFCQUFxQix5QkFBeUIsNEJBQ2xFLHNCQUFzQjtBQTJCeEIsUUF6QitCLGNBQWM7QUFDM0MsU0FBTztHQUNMO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0E7R0FDQTtHQUNBO0dBQ0Q7SUFDQTtFQUNEO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0QsQ0FBQyJ9
|
|
130
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FsZXNBZ2VudENvbnRleHQuanMiLCJuYW1lcyI6WyJTYWxlc0FnZW50UHJvdmlkZXI6IFJlYWN0LkZDPHsgY2hpbGRyZW46IFJlYWN0Tm9kZSB9PiIsIm5ld01lc3NhZ2U6IE1lc3NhZ2UiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29udGV4dHMvc2FsZXNBZ2VudENvbnRleHQvc2FsZXNBZ2VudENvbnRleHQudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUF0b20sIHVzZUF0b21WYWx1ZSwgdXNlU2V0QXRvbSB9IGZyb20gJ2pvdGFpJztcbmltcG9ydCB7IFJlYWN0Tm9kZSwgY3JlYXRlQ29udGV4dCwgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTWVtbyB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IFVzZXJFdmVudENhdGVnb3J5IH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IE1lc3NhZ2UsIE1lc3NhZ2VSb2xlLCBNZXNzYWdlVHlwZSB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMvbWVzc2FnZSc7XG5pbXBvcnQgeyBOZXh0TWVzc2FnZVJlcXVlc3QsIFN1Z2dlc3Rpb24sIFVzZXJFdmVudCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHtcbiAgaW5pdGlhbGl6ZWRBdG9tLFxuICBtZXNzYWdlc0F0b20sXG4gIHBlbmRpbmdSZXNwb25zZUF0b20sXG4gIHJlc3BvbnNlU3RyZWFtaW5nQXRvbSxcbiAgc3VnZ2VzdGlvbnNBdG9tLFxufSBmcm9tICdzcmMvYXRvbXMvY2hhdC9jaGF0U3RhdGUnO1xuaW1wb3J0IHtcbiAgcHJvY2Vzc1VzZXJFdmVudEF0b20sXG4gIHVzZXJFdmVudFF1ZXVlQXRvbSxcbiAgdXNlclF1ZXVlRXZlbnRDb3VudEF0b20sXG59IGZyb20gJ3NyYy9hdG9tcy9jaGF0L21lc3NhZ2VRdWV1ZSc7XG5pbXBvcnQgeyB1c2VTeXN0ZW1TZXR0aW5nc0NvbnRleHQgfSBmcm9tICdzcmMvaG9va3MvU3lzdGVtU2V0dGluZ3NDb250ZXh0JztcbmltcG9ydCB7IFNhbGVzQWdlbnRDaGF0QVBJLCB1c2VTYWxlc0FnZW50Q2hhdEFQSSB9IGZyb20gJy4vY2hhdEFQSSc7XG5pbXBvcnQgeyB1c2VTYWxlc0FnZW50U2VydmljZSB9IGZyb20gJy4vc2FsZXNBZ2VudFNlcnZpY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNhbGVzQWdlbnQgZXh0ZW5kcyBTYWxlc0FnZW50Q2hhdEFQSSB7XG4gIC8vIE1lc3NhZ2VzIGFyZSB0aGUgZnVsbCBsaXN0IG9mIGFsbCB0dXJuc1xuICBtZXNzYWdlczogTWVzc2FnZVtdW107XG4gIC8vIFBlbmRpbmcgbWVzc2FnZXMgYXJlIG1lc3NhZ2VzIHRoYXQgdGhlIHVzZXIgaGFzIGNsaWNrZWQvdHlwZWQgYnV0IGhhdmUgbm90IHlldCBiZWVuIHNlbnQgdG8gdGhlIGJhY2tlbmQuXG4gIHBlbmRpbmdNZXNzYWdlczogVXNlckV2ZW50W107XG4gIC8vIFN1Z2dlc3Rpb25zIGFyZSB0aGUgbGlzdCBvZiBzdWdnZXN0aW9ucyB0aGF0IHRoZSB1c2VyIGNhbiBjbGljayBvbiBpbiByZXNwb25zZSB0byB0aGUgbW9zdCByZWNlbnQgbWVzc2FnZSBmcm9tIHRoZSBiYWNrZW5kXG4gIHN1Z2dlc3Rpb25zOiBTdWdnZXN0aW9uW107XG4gIC8vIFRydWUgd2hpbGUgdGhlIHJlc3BvbnNlIGlzIHN0cmVhbWluZyBmcm9tIHRoZSBiYWNrZW5kXG4gIGlzUmVzcG9uc2VTdHJlYW1pbmc6IGJvb2xlYW47XG4gIC8vIFRydWUgd2hpbGUgdGhlIHJlc3BvbnNlIGlzIHBlbmRpbmcgZnJvbSB0aGUgYmFja2VuZFxuICBpc1BlbmRpbmdSZXNwb25zZTogYm9vbGVhbjtcbiAgLy8gVHJ1ZSB3aGVuIHRoZSBzYWxlcyBhZ2VudCBpcyBpbml0aWFsaXplZFxuICBpc0luaXRpYWxpemVkOiBib29sZWFuO1xufVxuXG5jb25zdCBTYWxlc0FnZW50Q29udGV4dCA9IGNyZWF0ZUNvbnRleHQ8U2FsZXNBZ2VudCB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuZXhwb3J0IGNvbnN0IFNhbGVzQWdlbnRQcm92aWRlcjogUmVhY3QuRkM8eyBjaGlsZHJlbjogUmVhY3ROb2RlIH0+ID0gKHsgY2hpbGRyZW4gfSkgPT4ge1xuICBjb25zdCB1c2VyRXZlbnRzID0gdXNlQXRvbVZhbHVlKHVzZXJFdmVudFF1ZXVlQXRvbSk7XG4gIGNvbnN0IHVzZXJRdWV1ZUV2ZW50Q291bnQgPSB1c2VBdG9tVmFsdWUodXNlclF1ZXVlRXZlbnRDb3VudEF0b20pO1xuICBjb25zdCBtYXJrVXNlckV2ZW50c1Byb2Nlc3NlZCA9IHVzZVNldEF0b20ocHJvY2Vzc1VzZXJFdmVudEF0b20pO1xuICBjb25zdCBbaXNJbml0aWFsaXplZCwgc2V0SXNJbml0aWFsaXplZF0gPSB1c2VBdG9tKGluaXRpYWxpemVkQXRvbSk7XG4gIGNvbnN0IHNldHRpbmdzQ29udGV4dCA9IHVzZVN5c3RlbVNldHRpbmdzQ29udGV4dCgpO1xuICBjb25zdCBzZXRNZXNzYWdlcyA9IHVzZVNldEF0b20obWVzc2FnZXNBdG9tKTtcblxuICBjb25zdCB7IGdldFN0cmVhbWluZ1Jlc3BvbnNlcywgY3JlYXRlUmVzcG9uc2VQYXlsb2FkLCBnZXRTdWdnZXN0aW9ucywgaHlkcmF0ZU1lc3NhZ2VzIH0gPVxuICAgIHVzZVNhbGVzQWdlbnRTZXJ2aWNlKCk7XG5cbiAgLy8gVE9ETzogRW5zdXJlIHRoYXQgYW1wbGl0dWRlIGV2ZW50cyBhcmUgYmVpbmcgZW1pdHRlZFxuXG4gIC8vIFRPRE86IEFkZCBzdXBwb3J0IGZvciB0aGUgc3RyZWFtaW5nIHJlc3BvbnNlcyB0byBmdW5jdGlvblxuXG4gIC8vIFRPRE86IEFkZCBzdXBwb3J0IGZvciB0aGUgaHlkcmF0aW9uIG9mIHRoZSBtZXNzYWdlcyBmcm9tIHRoZSBiYWNrZW5kIG9uIGluaXRpYWxpemF0aW9uXG4gIGNvbnN0IHNlbmRNZXNzYWdlc1RvQmFja2VuZCA9IHVzZUNhbGxiYWNrKFxuICAgIGFzeW5jIChyZXF1ZXN0UGF5bG9hZDogTmV4dE1lc3NhZ2VSZXF1ZXN0KSA9PiB7XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGdldFN0cmVhbWluZ1Jlc3BvbnNlcyhyZXF1ZXN0UGF5bG9hZCk7XG4gICAgICAgIHNldElzSW5pdGlhbGl6ZWQodHJ1ZSk7XG5cbiAgICAgICAgY29uc29sZS5sb2coJ3Jlc3BvbnNlJywgcmVzcG9uc2UpO1xuICAgICAgICAvLyBSZW1vdmUgdGhlIHBlbmRpbmcgbWVzc2FnZSBmcm9tIHRoZSB1c2VyIGV2ZW50c1xuICAgICAgICByZXF1ZXN0UGF5bG9hZC51c2VyRXZlbnRzPy5tYXAodXNlckV2ZW50ID0+IG1hcmtVc2VyRXZlbnRzUHJvY2Vzc2VkKFt1c2VyRXZlbnQuZXZlbnRJZF0pKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ2Vycm9yIHNlbmRpbmcgbWVzc2FnZScpO1xuICAgICAgfVxuICAgIH0sXG4gICAgW2dldFN0cmVhbWluZ1Jlc3BvbnNlcywgc2V0SXNJbml0aWFsaXplZCwgbWFya1VzZXJFdmVudHNQcm9jZXNzZWRdLFxuICApO1xuXG4gIGNvbnNvbGUubG9nKCd1c2VyUXVldWVFdmVudENvdW50JywgdXNlclF1ZXVlRXZlbnRDb3VudCk7XG4gIGNvbnNvbGUubG9nKCd1c2VyRXZlbnRzJywgdXNlckV2ZW50cyk7XG5cbiAgLy8gVGhpcyBpcyB0aGUgcHJpbWFyeSBldmVudCBsb29wIGZvciBjb21tdW5pY2F0aW5nIHdpdGggdGhlIGJhY2tlbmQgQVBJXG4gIC8vIEl0IHdpbGwgYmUgdHJpZ2dlcmVkIHdoZW4gdGhlcmUgYXJlIHBlbmRpbmcgbWVzc2FnZXMgdG8gYmUgc2VudCB0byB0aGUgYmFja2VuZFxuICAvLyBJdCB3aWxsIGJlIHJlc3BvbnNpYmxlIGZvciBzZW5kaW5nIHRoZSBtZXNzYWdlcyB0byB0aGUgYmFja2VuZCBhbmQgcmVjZWl2aW5nIHRoZSByZXNwb25zZXNcbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zb2xlLmxvZygnU2FsZXNBZ2VudFByb3ZpZGVyIHVzZUVmZmVjdCcsIHVzZXJRdWV1ZUV2ZW50Q291bnQsIGlzSW5pdGlhbGl6ZWQsIHVzZXJFdmVudHMpO1xuICAgIGlmICh1c2VyUXVldWVFdmVudENvdW50ID4gMCkge1xuICAgICAgY29uc3QgcGF5bG9hZEV2ZW50cyA9IHVzZXJFdmVudHMuc2xpY2UoMCwgdXNlclF1ZXVlRXZlbnRDb3VudCk7XG5cbiAgICAgIHBheWxvYWRFdmVudHMuZm9yRWFjaCh1c2VyRXZlbnQgPT4ge1xuICAgICAgICBpZiAodXNlckV2ZW50ICYmIHVzZXJFdmVudC5jYXRlZ29yeSA9PT0gVXNlckV2ZW50Q2F0ZWdvcnkuUXVlcnlUeXBlZCkge1xuICAgICAgICAgIGNvbnN0IG5ld01lc3NhZ2U6IE1lc3NhZ2UgPSB7XG4gICAgICAgICAgICBpZDogdXNlckV2ZW50LmV2ZW50SWQsXG4gICAgICAgICAgICByb2xlOiBNZXNzYWdlUm9sZS5Vc2VyLFxuICAgICAgICAgICAgdHlwZTogTWVzc2FnZVR5cGUuUXVlcnlUeXBlZCxcbiAgICAgICAgICAgIGNyZWF0ZWRBdDogdXNlckV2ZW50LmNyZWF0ZWRBdCxcbiAgICAgICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IHVzZXJFdmVudC5hdHRyaWJ1dGVzLnF1ZXJ5LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICAgIHNldE1lc3NhZ2VzKGN1cnJlbnQgPT4gWy4uLmN1cnJlbnQsIFtuZXdNZXNzYWdlXV0pO1xuICAgICAgICB9XG4gICAgICAgIGlmICh1c2VyRXZlbnQgJiYgdXNlckV2ZW50LmNhdGVnb3J5ID09PSBVc2VyRXZlbnRDYXRlZ29yeS5TdWdnZXN0aW9uQ2xpY2tlZCkge1xuICAgICAgICAgIGNvbnN0IG5ld01lc3NhZ2U6IE1lc3NhZ2UgPSB7XG4gICAgICAgICAgICBpZDogdXNlckV2ZW50LmV2ZW50SWQsXG4gICAgICAgICAgICByb2xlOiBNZXNzYWdlUm9sZS5Vc2VyLFxuICAgICAgICAgICAgdHlwZTogTWVzc2FnZVR5cGUuUXVlcnlUeXBlZCxcbiAgICAgICAgICAgIGNyZWF0ZWRBdDogdXNlckV2ZW50LmNyZWF0ZWRBdCxcbiAgICAgICAgICAgIG1ldGFkYXRhOiB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IHVzZXJFdmVudC5hdHRyaWJ1dGVzLmNvbnRlbnQgPz8gJycsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgICAgc2V0TWVzc2FnZXMoY3VycmVudCA9PiBbLi4uY3VycmVudCwgW25ld01lc3NhZ2VdXSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuXG4gICAgICBzZW5kTWVzc2FnZXNUb0JhY2tlbmQoXG4gICAgICAgIGNyZWF0ZVJlc3BvbnNlUGF5bG9hZCh7XG4gICAgICAgICAgdXNlckV2ZW50czogcGF5bG9hZEV2ZW50cyxcbiAgICAgICAgICBnZW5lcmF0aW9uUGFyYW1zOiBzZXR0aW5nc0NvbnRleHQuZ2VuZXJhdGlvblBhcmFtcyxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH0gZWxzZSBpZiAoaXNJbml0aWFsaXplZCkge1xuICAgICAgZ2V0U3VnZ2VzdGlvbnMoXG4gICAgICAgIGNyZWF0ZVJlc3BvbnNlUGF5bG9hZCh7XG4gICAgICAgICAgdXNlckV2ZW50czogW10sXG4gICAgICAgICAgZ2VuZXJhdGlvblBhcmFtczogc2V0dGluZ3NDb250ZXh0LmdlbmVyYXRpb25QYXJhbXMsXG4gICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9XG4gIH0sIFtcbiAgICBjcmVhdGVSZXNwb25zZVBheWxvYWQsXG4gICAgZ2V0U3VnZ2VzdGlvbnMsXG4gICAgaXNJbml0aWFsaXplZCxcbiAgICBzZXRNZXNzYWdlcyxcbiAgICBzZW5kTWVzc2FnZXNUb0JhY2tlbmQsXG4gICAgc2V0dGluZ3NDb250ZXh0LmdlbmVyYXRpb25QYXJhbXMsXG4gICAgdXNlckV2ZW50cyxcbiAgICB1c2VyUXVldWVFdmVudENvdW50LFxuICBdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChpc0luaXRpYWxpemVkKSB7XG4gICAgICAvLyBSZWh5ZHJhdGUgYW55IG1lc3NhZ2VzIGZyb20gdGhlIGJhY2tlbmRcbiAgICAgIGh5ZHJhdGVNZXNzYWdlcygpO1xuICAgIH1cbiAgfSwgW2lzSW5pdGlhbGl6ZWQsIGh5ZHJhdGVNZXNzYWdlc10pO1xuXG4gIHJldHVybiA8U2FsZXNBZ2VudENvbnRleHQuUHJvdmlkZXIgdmFsdWU9e3VuZGVmaW5lZH0+e2NoaWxkcmVufTwvU2FsZXNBZ2VudENvbnRleHQuUHJvdmlkZXI+O1xufTtcblxuZXhwb3J0IGNvbnN0IHVzZVNhbGVzQWdlbnQgPSAoKTogU2FsZXNBZ2VudCA9PiB7XG4gIGNvbnN0IG1lc3NhZ2VzID0gdXNlQXRvbVZhbHVlKG1lc3NhZ2VzQXRvbSk7XG4gIGNvbnN0IHN1Z2dlc3Rpb25zID0gdXNlQXRvbVZhbHVlKHN1Z2dlc3Rpb25zQXRvbSk7XG4gIGNvbnN0IHBlbmRpbmdNZXNzYWdlcyA9IHVzZUF0b21WYWx1ZSh1c2VyRXZlbnRRdWV1ZUF0b20pO1xuICBjb25zdCBpc1Jlc3BvbnNlU3RyZWFtaW5nID0gdXNlQXRvbVZhbHVlKHJlc3BvbnNlU3RyZWFtaW5nQXRvbSk7XG4gIGNvbnN0IGlzUGVuZGluZ1Jlc3BvbnNlID0gdXNlQXRvbVZhbHVlKHBlbmRpbmdSZXNwb25zZUF0b20pO1xuICBjb25zdCBpc0luaXRpYWxpemVkID0gdXNlQXRvbVZhbHVlKGluaXRpYWxpemVkQXRvbSk7XG4gIGNvbnN0IHtcbiAgICBsb2dQYWdlVmlzaXQsXG4gICAgbG9nVXNlckV2ZW50LFxuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gIH0gPSB1c2VTYWxlc0FnZW50Q2hhdEFQSSgpO1xuXG4gIGNvbnN0IHNhbGVzQWdlbnQ6IFNhbGVzQWdlbnQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbWVzc2FnZXMsXG4gICAgICBzdWdnZXN0aW9ucyxcbiAgICAgIHBlbmRpbmdNZXNzYWdlcyxcbiAgICAgIGlzSW5pdGlhbGl6ZWQsXG4gICAgICBpc1Jlc3BvbnNlU3RyZWFtaW5nLFxuICAgICAgaXNQZW5kaW5nUmVzcG9uc2UsXG4gICAgICBsb2dQYWdlVmlzaXQsXG4gICAgICBsb2dVc2VyRXZlbnQsXG4gICAgICBvblN1Z2dlc3Rpb25DbGlja2VkLFxuICAgICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgICBvbkZvcm1SZXNwb25zZVN1Ym1pdHRlZCxcbiAgICB9O1xuICB9LCBbXG4gICAgbWVzc2FnZXMsXG4gICAgc3VnZ2VzdGlvbnMsXG4gICAgcGVuZGluZ01lc3NhZ2VzLFxuICAgIGlzSW5pdGlhbGl6ZWQsXG4gICAgaXNSZXNwb25zZVN0cmVhbWluZyxcbiAgICBpc1BlbmRpbmdSZXNwb25zZSxcbiAgICBsb2dQYWdlVmlzaXQsXG4gICAgbG9nVXNlckV2ZW50LFxuICAgIG9uU3VnZ2VzdGlvbkNsaWNrZWQsXG4gICAgb25UeXBlZE1lc3NhZ2VTdWJtaXR0ZWQsXG4gICAgb25Gb3JtUmVzcG9uc2VTdWJtaXR0ZWQsXG4gIF0pO1xuICByZXR1cm4gc2FsZXNBZ2VudDtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFvQ0EsTUFBTSxvQkFBb0IsY0FBc0MsT0FBVTtBQUUxRSxNQUFhQSxzQkFBeUQsRUFBRSxlQUFlO0NBQ3JGLE1BQU0sYUFBYSxhQUFhLG1CQUFtQjtDQUNuRCxNQUFNLHNCQUFzQixhQUFhLHdCQUF3QjtDQUNqRSxNQUFNLDBCQUEwQixXQUFXLHFCQUFxQjtDQUNoRSxNQUFNLENBQUMsZUFBZSxvQkFBb0IsUUFBUSxnQkFBZ0I7Q0FDbEUsTUFBTSxrQkFBa0IsMEJBQTBCO0NBQ2xELE1BQU0sY0FB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
|