@envive-ai/react-toolkit-v3 0.3.7 → 0.3.9
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/AnimatedText/AnimatedText.cjs +20 -4
- package/dist/AnimatedText/AnimatedText.d.cts +3 -3
- package/dist/AnimatedText/AnimatedText.d.ts +3 -3
- package/dist/AnimatedText/AnimatedText.js +21 -5
- package/dist/AnimatedText/types/types.d.cts +0 -4
- package/dist/AnimatedText/types/types.d.ts +0 -4
- package/dist/CSSVariablesEditor/CssVariablesEditorComponent.d.cts +2 -2
- package/dist/CSSVariablesEditor/CssVariablesEditorComponent.d.ts +2 -2
- package/dist/CSSVariablesEditor/components/CSSVariablesEditor.cjs +1 -1
- package/dist/CSSVariablesEditor/components/CSSVariablesEditor.js +1 -1
- package/dist/CSSVariablesEditor/hooks/useGetCssVariablesOptions.cjs +3 -3
- package/dist/CSSVariablesEditor/hooks/useGetCssVariablesOptions.js +3 -3
- package/dist/CSSVariablesEditor/hooks/useGetCurrentMerchantColors.cjs +1 -1
- package/dist/CSSVariablesEditor/hooks/useGetCurrentMerchantColors.js +1 -1
- package/dist/CSSVariablesEditor/hooks/useGetDefaultCssVariables.cjs +10 -10
- package/dist/CSSVariablesEditor/hooks/useGetDefaultCssVariables.js +10 -10
- package/dist/CSSVariablesEditor/hooks/useHandleUpdateCssVars.cjs +9 -9
- package/dist/CSSVariablesEditor/hooks/useHandleUpdateCssVars.js +9 -9
- package/dist/CSSVariablesEditor/utils/functions.cjs +2 -2
- package/dist/CSSVariablesEditor/utils/functions.js +2 -2
- package/dist/Carousel/Carousel.cjs +2 -2
- package/dist/Carousel/Carousel.d.cts +2 -2
- package/dist/Carousel/Carousel.d.ts +2 -2
- package/dist/Carousel/Carousel.js +2 -2
- package/dist/Carousel/components/Container.cjs +3 -3
- package/dist/Carousel/components/Container.js +3 -3
- package/dist/Carousel/hooks/useGetBadgeProperties.cjs +1 -1
- package/dist/Carousel/hooks/useGetBadgeProperties.js +1 -1
- package/dist/Carousel/types/types.d.ts +1 -1
- package/dist/ChatFooter/ChatFooter.cjs +2 -2
- package/dist/ChatFooter/ChatFooter.d.ts +2 -2
- package/dist/ChatFooter/ChatFooter.js +2 -2
- package/dist/ChatFooter/components/Layout.cjs +2 -2
- package/dist/ChatFooter/components/Layout.d.ts +1 -1
- package/dist/ChatFooter/components/Layout.js +2 -2
- package/dist/ChatFooter/components/PromptSuggestions.d.ts +1 -1
- package/dist/ChatFooter/components/index.d.cts +2 -2
- package/dist/ChatFooter/components/index.d.ts +5 -5
- package/dist/ChatFooter/hooks/useGetChatScrollProperties.cjs +1 -1
- package/dist/ChatFooter/hooks/useGetChatScrollProperties.js +1 -1
- package/dist/ChatFooter/hooks/useGetContainerProperties.cjs +10 -9
- package/dist/ChatFooter/hooks/useGetContainerProperties.js +10 -9
- package/dist/ChatFooter/types/types.d.ts +1 -1
- package/dist/ChatHeader/ChatHeader.cjs +1 -1
- package/dist/ChatHeader/ChatHeader.d.cts +2 -2
- package/dist/ChatHeader/ChatHeader.d.ts +2 -2
- package/dist/ChatHeader/ChatHeader.js +1 -1
- package/dist/ChatHeader/components/CloseButton.cjs +1 -1
- package/dist/ChatHeader/components/CloseButton.js +1 -1
- package/dist/ChatHeader/components/Handle.cjs +13 -5
- package/dist/ChatHeader/components/Handle.js +13 -5
- package/dist/ChatHeader/components/Toggle.cjs +4 -4
- package/dist/ChatHeader/components/Toggle.js +4 -4
- package/dist/ChatHeader/hooks/useGetCloseButtonProperties.cjs +1 -1
- package/dist/ChatHeader/hooks/useGetCloseButtonProperties.js +1 -1
- package/dist/ChatHeader/hooks/useGetHandleProperties.cjs +17 -17
- package/dist/ChatHeader/hooks/useGetHandleProperties.js +17 -17
- package/dist/ChatHeader/hooks/useGetLayoutProperties.cjs +8 -8
- package/dist/ChatHeader/hooks/useGetLayoutProperties.js +8 -8
- package/dist/ChatHeader/hooks/useGetToggleOptionProperties.cjs +17 -17
- package/dist/ChatHeader/hooks/useGetToggleOptionProperties.js +17 -17
- package/dist/ChatHeader/hooks/useGetToggleProperties.cjs +3 -3
- package/dist/ChatHeader/hooks/useGetToggleProperties.js +3 -3
- package/dist/ChatHeader/hooks/useToggleLogoSelector.cjs +1 -1
- package/dist/ChatHeader/hooks/useToggleLogoSelector.js +1 -1
- package/dist/ChatHeader/types/index.d.ts +2 -2
- package/dist/ChatPreview/ChatPreview.cjs +15 -5
- package/dist/ChatPreview/ChatPreview.d.cts +2 -2
- package/dist/ChatPreview/ChatPreview.d.ts +2 -2
- package/dist/ChatPreview/ChatPreview.js +15 -5
- package/dist/ChatPreview/components/Message.cjs +4 -3
- package/dist/ChatPreview/components/Message.js +4 -3
- package/dist/ChatPreview/types/types.d.cts +5 -4
- package/dist/ChatPreview/types/types.d.ts +6 -5
- package/dist/ChatPreviewComparison/ChatPreviewComparison.cjs +15 -5
- package/dist/ChatPreviewComparison/ChatPreviewComparison.d.cts +2 -2
- package/dist/ChatPreviewComparison/ChatPreviewComparison.js +15 -5
- package/dist/ChatPreviewComparison/components/Headline.cjs +3 -3
- package/dist/ChatPreviewComparison/components/Headline.js +3 -3
- package/dist/ChatPreviewComparison/components/Layout.cjs +7 -7
- package/dist/ChatPreviewComparison/components/Layout.js +7 -7
- package/dist/ChatPreviewComparison/components/Message.cjs +7 -6
- package/dist/ChatPreviewComparison/components/Message.js +7 -6
- package/dist/ChatPreviewComparison/types/types.d.cts +4 -4
- package/dist/ChatPreviewComparison/types/types.d.ts +5 -5
- package/dist/ChatPreviewLoading/ChatPreviewLoading.cjs +1 -1
- package/dist/ChatPreviewLoading/ChatPreviewLoading.d.ts +2 -2
- package/dist/ChatPreviewLoading/ChatPreviewLoading.js +1 -1
- package/dist/Container/Container.d.cts +176 -176
- package/dist/Container/Container.d.ts +176 -176
- package/dist/DesignTokens/DesignTokensComponent.cjs +1 -1
- package/dist/DesignTokens/DesignTokensComponent.d.cts +2 -2
- package/dist/DesignTokens/DesignTokensComponent.js +1 -1
- package/dist/DesignTokens/components/Typography.cjs +1 -1
- package/dist/DesignTokens/components/Typography.js +1 -1
- package/dist/Disclaimer/Disclaimer.cjs +23 -0
- package/dist/Disclaimer/Disclaimer.d.cts +19 -0
- package/dist/Disclaimer/Disclaimer.d.ts +19 -0
- package/dist/Disclaimer/Disclaimer.js +22 -0
- package/dist/Disclaimer/components/Container.cjs +26 -0
- package/dist/Disclaimer/components/Container.js +24 -0
- package/dist/Disclaimer/components/DisclaimerContent.cjs +19 -0
- package/dist/Disclaimer/components/DisclaimerContent.js +18 -0
- package/dist/Disclaimer/components/index.cjs +11 -0
- package/dist/Disclaimer/components/index.js +11 -0
- package/dist/Disclaimer/index.cjs +3 -0
- package/dist/Disclaimer/index.d.cts +2 -0
- package/dist/Disclaimer/index.d.ts +2 -0
- package/dist/Disclaimer/index.js +3 -0
- package/dist/Disclaimer/types/types.d.cts +30 -0
- package/dist/Disclaimer/types/types.d.ts +30 -0
- package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.ts +2 -2
- package/dist/DocumentRetrievalCard/components/Layout.cjs +2 -2
- package/dist/DocumentRetrievalCard/components/Layout.js +2 -2
- package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.cjs +1 -1
- package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetBackgroundColorsProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetBackgroundColorsProperties.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetBorderProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetBorderProperties.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetBorderRadiusProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetBorderRadiusProperties.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetIconBackgroundProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetIconBackgroundProperties.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetIconColorProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetIconColorProperties.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetLabelTextCaseProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetLabelTextCaseProperties.js +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetLabelTypographyProperties.cjs +1 -1
- package/dist/DocumentRetrievalCard/hooks/useGetLabelTypographyProperties.js +1 -1
- package/dist/DocumentRetrievalCard/index.cjs +1 -1
- package/dist/DocumentRetrievalCard/index.d.ts +1 -1
- package/dist/DocumentRetrievalCard/index.js +1 -1
- package/dist/DocumentRetrievalCard/types/index.d.ts +1 -1
- package/dist/DocumentRetrievalCard/utils/functions.cjs +1 -1
- package/dist/DocumentRetrievalCard/utils/functions.js +1 -1
- package/dist/FloatingButton/FloatingButton.d.cts +2 -2
- package/dist/FloatingButton/FloatingButton.d.ts +2 -2
- package/dist/FloatingButton/hooks/useGetButtonProperties.cjs +2 -2
- package/dist/FloatingButton/hooks/useGetButtonProperties.js +2 -2
- package/dist/FloatingButton/types/types.d.ts +1 -1
- package/dist/FloatingChat/FloatingChat.cjs +25 -14
- package/dist/FloatingChat/FloatingChat.d.cts +3 -2
- package/dist/FloatingChat/FloatingChat.d.ts +1 -0
- package/dist/FloatingChat/FloatingChat.js +25 -14
- package/dist/FloatingChat/components/AgentMessage.cjs +57 -29
- package/dist/FloatingChat/components/AgentMessage.js +57 -29
- package/dist/FloatingChat/components/ChatMessages.cjs +10 -9
- package/dist/FloatingChat/components/ChatMessages.js +10 -9
- package/dist/FloatingChat/components/DocumentRetrievalCardsCarousel.cjs +2 -1
- package/dist/FloatingChat/components/DocumentRetrievalCardsCarousel.js +2 -1
- package/dist/FloatingChat/components/Layout.cjs +15 -11
- package/dist/FloatingChat/components/Layout.js +15 -11
- package/dist/FloatingChat/components/MessageDivider.cjs +8 -2
- package/dist/FloatingChat/components/MessageDivider.js +8 -2
- package/dist/FloatingChat/components/ModalSheet.cjs +2 -2
- package/dist/FloatingChat/components/ModalSheet.js +2 -2
- package/dist/FloatingChat/components/ReviewCardsCarousel.cjs +2 -1
- package/dist/FloatingChat/components/ReviewCardsCarousel.js +2 -1
- package/dist/FloatingChat/components/ScrollToBottomButton.cjs +1 -1
- package/dist/FloatingChat/components/ScrollToBottomButton.js +1 -1
- package/dist/FloatingChat/hooks/useScrollToBottom.cjs +109 -11
- package/dist/FloatingChat/hooks/useScrollToBottom.js +110 -12
- package/dist/FloatingChat/hooks/useSnapSetup.cjs +0 -3
- package/dist/FloatingChat/hooks/useSnapSetup.js +0 -3
- package/dist/FloatingChat/types/types.d.cts +5 -5
- package/dist/FloatingChat/types/types.d.ts +6 -6
- package/dist/FloatingChat/utils/functions.cjs +1 -0
- package/dist/FloatingChat/utils/functions.js +1 -0
- package/dist/Form/Form.cjs +1 -1
- package/dist/Form/Form.js +1 -1
- package/dist/Image/Image.d.cts +2 -2
- package/dist/Image/Image.d.ts +2 -2
- package/dist/ImageGallery/ImageGallery.cjs +1 -1
- package/dist/ImageGallery/ImageGallery.d.cts +2 -2
- package/dist/ImageGallery/ImageGallery.d.ts +2 -2
- package/dist/ImageGallery/ImageGallery.js +1 -1
- package/dist/ImageGallery/components/Layout.cjs +2 -2
- package/dist/ImageGallery/components/Layout.js +2 -2
- package/dist/ImageGallery/components/NormalLayout.cjs +1 -1
- package/dist/ImageGallery/components/NormalLayout.js +1 -1
- package/dist/ImageGallery/types/types.d.ts +1 -1
- package/dist/ImageGallery/utils/functions.cjs +1 -1
- package/dist/ImageGallery/utils/functions.js +1 -1
- package/dist/MarkdownProcessor/MarkdownProcessor.cjs +1 -1
- package/dist/MarkdownProcessor/MarkdownProcessor.d.ts +2 -2
- package/dist/MarkdownProcessor/MarkdownProcessor.js +1 -1
- package/dist/MarkdownProcessor/components/MarkdownLink.cjs +4 -1
- package/dist/MarkdownProcessor/components/MarkdownLink.js +4 -1
- package/dist/Message/components/AgentContent.cjs +6 -2
- package/dist/Message/components/AgentContent.js +6 -2
- package/dist/Message/components/LinkButton.cjs +3 -3
- package/dist/Message/components/LinkButton.d.cts +5 -1
- package/dist/Message/components/LinkButton.d.ts +5 -1
- package/dist/Message/components/LinkButton.js +3 -3
- package/dist/Message/hooks/useGetLinkButtonProperties.cjs +1 -1
- package/dist/Message/hooks/useGetLinkButtonProperties.js +1 -1
- package/dist/OrderLookupCard/OrderLookupCard.cjs +2 -2
- package/dist/OrderLookupCard/OrderLookupCard.js +2 -2
- package/dist/OrderLookupCard/hooks/useGetContainerProperties.cjs +1 -1
- package/dist/OrderLookupCard/hooks/useGetContainerProperties.js +1 -1
- package/dist/OrderLookupCard/hooks/useGetImageBorderRadiusProperties.cjs +1 -1
- package/dist/OrderLookupCard/hooks/useGetImageBorderRadiusProperties.js +1 -1
- package/dist/OrderLookupCard/hooks/useGetStatusLabelProperties.cjs +1 -1
- package/dist/OrderLookupCard/hooks/useGetStatusLabelProperties.js +1 -1
- package/dist/OrderLookupCard/hooks/useGetTrackOrderLinkProperties.cjs +1 -1
- package/dist/OrderLookupCard/hooks/useGetTrackOrderLinkProperties.js +1 -1
- package/dist/OrderLookupCard/types/index.d.ts +1 -1
- package/dist/ProductCard/ProductCard.cjs +47 -0
- package/dist/ProductCard/ProductCard.d.cts +23 -0
- package/dist/ProductCard/ProductCard.d.ts +23 -0
- package/dist/ProductCard/ProductCard.js +45 -0
- package/dist/ProductCard/components/Carousel.cjs +25 -0
- package/dist/ProductCard/components/Carousel.js +24 -0
- package/dist/ProductCard/components/Header.cjs +42 -0
- package/dist/ProductCard/components/Header.js +41 -0
- package/dist/ProductCard/components/Poster.cjs +18 -0
- package/dist/ProductCard/components/Poster.js +17 -0
- package/dist/ProductCard/components/index.cjs +13 -0
- package/dist/ProductCard/components/index.js +13 -0
- package/dist/ProductCard/hooks/useGetCarouselProperties.cjs +8 -0
- package/dist/ProductCard/hooks/useGetCarouselProperties.js +7 -0
- package/dist/ProductCard/hooks/useGetHeaderProperties.cjs +11 -0
- package/dist/ProductCard/hooks/useGetHeaderProperties.js +10 -0
- package/dist/ProductCard/hooks/useGetPosterProperties.cjs +13 -0
- package/dist/ProductCard/hooks/useGetPosterProperties.js +12 -0
- package/dist/ProductCard/index.cjs +3 -0
- package/dist/ProductCard/index.d.cts +3 -0
- package/dist/ProductCard/index.d.ts +3 -0
- package/dist/ProductCard/index.js +3 -0
- package/dist/ProductCard/types/index.d.cts +74 -0
- package/dist/ProductCard/types/index.d.ts +74 -0
- package/dist/PromptButton/PromptButton.cjs +1 -1
- package/dist/PromptButton/PromptButton.d.cts +2 -2
- package/dist/PromptButton/PromptButton.d.ts +2 -2
- package/dist/PromptButton/PromptButton.js +1 -1
- package/dist/PromptButton/hooks/useGetIconColorsProperties.cjs +1 -1
- package/dist/PromptButton/hooks/useGetIconColorsProperties.js +1 -1
- package/dist/PromptButton/types/index.d.ts +1 -1
- package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.cjs +4 -3
- package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.cts +2 -2
- package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.ts +2 -2
- package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.js +4 -3
- package/dist/PromptButtonCarouselWithImage/components/Layout.cjs +8 -3
- package/dist/PromptButtonCarouselWithImage/components/Layout.js +8 -3
- package/dist/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.cjs +53 -3
- package/dist/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.js +53 -3
- package/dist/PromptButtonCarouselWithImage/types/types.d.ts +1 -1
- package/dist/PromptCarousel/PromptCarousel.cjs +72 -35
- package/dist/PromptCarousel/PromptCarousel.d.cts +2 -2
- package/dist/PromptCarousel/PromptCarousel.d.ts +2 -2
- package/dist/PromptCarousel/PromptCarousel.js +73 -36
- package/dist/PromptCarousel/hooks/index.cjs +2 -4
- package/dist/PromptCarousel/hooks/index.js +2 -4
- package/dist/PromptCarousel/hooks/useCoordinatedScrollAnimation.cjs +91 -0
- package/dist/PromptCarousel/hooks/useCoordinatedScrollAnimation.js +90 -0
- package/dist/PromptCarousel/hooks/useScrollSync.cjs +65 -0
- package/dist/PromptCarousel/hooks/useScrollSync.js +64 -0
- package/dist/PromptCarousel/types/types.d.ts +1 -1
- package/dist/ReviewCard/ReviewCard.cjs +2 -2
- package/dist/ReviewCard/ReviewCard.d.cts +2 -2
- package/dist/ReviewCard/ReviewCard.d.ts +2 -2
- package/dist/ReviewCard/ReviewCard.js +2 -2
- package/dist/ReviewCard/components/Container.cjs +2 -2
- package/dist/ReviewCard/components/Container.d.ts +1 -1
- package/dist/ReviewCard/components/Container.js +2 -2
- package/dist/ReviewCard/components/Rating.d.ts +1 -1
- package/dist/ReviewCard/components/ReadMoreButton.cjs +2 -2
- package/dist/ReviewCard/components/ReadMoreButton.d.ts +1 -1
- package/dist/ReviewCard/components/ReadMoreButton.js +2 -2
- package/dist/ReviewCard/components/index.d.cts +6 -6
- package/dist/ReviewCard/components/index.d.ts +7 -7
- package/dist/ReviewCard/hooks/useGetBackgroundColorsProperties.cjs +1 -1
- package/dist/ReviewCard/hooks/useGetBackgroundColorsProperties.js +1 -1
- package/dist/ReviewCard/hooks/useGetBorderProperties.cjs +1 -1
- package/dist/ReviewCard/hooks/useGetBorderProperties.js +1 -1
- package/dist/ReviewCard/hooks/useGetBorderRadiusProperties.cjs +1 -1
- package/dist/ReviewCard/hooks/useGetBorderRadiusProperties.js +1 -1
- package/dist/ReviewCard/hooks/useGetRatingBackgroundProperties.cjs +1 -1
- package/dist/ReviewCard/hooks/useGetRatingBackgroundProperties.js +1 -1
- package/dist/ReviewCard/hooks/useGetReadMoreTypographyProperties.cjs +1 -1
- package/dist/ReviewCard/hooks/useGetReadMoreTypographyProperties.js +1 -1
- package/dist/ReviewCard/hooks/useGetStarIconProperties.cjs +1 -1
- package/dist/ReviewCard/hooks/useGetStarIconProperties.js +1 -1
- package/dist/ReviewCard/types/types.d.ts +1 -1
- package/dist/SalesAgentProductCard/SalesAgentProductCard.cjs +1 -1
- package/dist/SalesAgentProductCard/SalesAgentProductCard.d.cts +2 -2
- package/dist/SalesAgentProductCard/SalesAgentProductCard.d.ts +2 -2
- package/dist/SalesAgentProductCard/SalesAgentProductCard.js +1 -1
- package/dist/SalesAgentProductCard/components/Container.cjs +3 -3
- package/dist/SalesAgentProductCard/components/Container.d.ts +1 -1
- package/dist/SalesAgentProductCard/components/Container.js +3 -3
- package/dist/SalesAgentProductCard/components/ProductName.cjs +1 -1
- package/dist/SalesAgentProductCard/components/ProductName.d.ts +1 -1
- package/dist/SalesAgentProductCard/components/ProductName.js +1 -1
- package/dist/SalesAgentProductCard/components/Rate.cjs +1 -1
- package/dist/SalesAgentProductCard/components/Rate.d.ts +1 -1
- package/dist/SalesAgentProductCard/components/Rate.js +1 -1
- package/dist/SalesAgentProductCard/components/index.d.cts +8 -8
- package/dist/SalesAgentProductCard/components/index.d.ts +9 -9
- package/dist/SalesAgentProductCard/hooks/useGetContainerProperties.cjs +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetContainerProperties.js +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetProductDescriptionProperties.cjs +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetProductDescriptionProperties.js +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetProductNameProperties.cjs +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetProductNameProperties.js +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetStarIconProperties.cjs +1 -1
- package/dist/SalesAgentProductCard/hooks/useGetStarIconProperties.js +1 -1
- package/dist/SalesAgentProductCard/types/types.d.ts +1 -1
- package/dist/SocialProof/SocialProof.cjs +14 -9
- package/dist/SocialProof/SocialProof.d.cts +2 -2
- package/dist/SocialProof/SocialProof.d.ts +2 -2
- package/dist/SocialProof/SocialProof.js +13 -8
- package/dist/SocialProof/components/Headline.cjs +5 -5
- package/dist/SocialProof/components/Headline.js +5 -5
- package/dist/SocialProof/components/LayoutFourHorizontal.cjs +2 -2
- package/dist/SocialProof/components/LayoutFourHorizontal.js +2 -2
- package/dist/SocialProof/components/LayoutSingle.cjs +1 -1
- package/dist/SocialProof/components/LayoutSingle.js +1 -1
- package/dist/SocialProof/components/Subheadline.cjs +2 -2
- package/dist/SocialProof/components/Subheadline.js +2 -2
- package/dist/SocialProof/components/Textfield.cjs +4 -2
- package/dist/SocialProof/components/Textfield.js +4 -2
- package/dist/SocialProof/index.cjs +1 -0
- package/dist/SocialProof/index.d.cts +2 -2
- package/dist/SocialProof/index.d.ts +2 -2
- package/dist/SocialProof/index.js +2 -2
- package/dist/SocialProof/types/types.cjs +7 -1
- package/dist/SocialProof/types/types.d.cts +11 -1
- package/dist/SocialProof/types/types.d.ts +12 -2
- package/dist/SocialProof/types/types.js +6 -1
- package/dist/SocialProof/utils/functions.cjs +1 -1
- package/dist/SocialProof/utils/functions.js +1 -1
- package/dist/Stack/Stack.d.cts +2 -2
- package/dist/Stack/Stack.d.ts +2 -2
- package/dist/Stack/hooks/useFormatStackChildren.cjs +1 -1
- package/dist/Stack/hooks/useFormatStackChildren.js +1 -1
- package/dist/TextField/TextField.cjs +1 -1
- package/dist/TextField/TextField.js +1 -1
- package/dist/TextField/components/Input.cjs +1 -1
- package/dist/TextField/components/Input.js +1 -1
- package/dist/TextField/hooks/useGetContainerProperties.cjs +5 -5
- package/dist/TextField/hooks/useGetContainerProperties.js +5 -5
- package/dist/TextField/types/index.d.ts +1 -1
- package/dist/TextField/utils/getInputClasses.cjs +1 -1
- package/dist/TextField/utils/getInputClasses.js +1 -1
- package/dist/TextField/utils/getSendIconElement.cjs +1 -1
- package/dist/TextField/utils/getSendIconElement.js +1 -1
- package/dist/Title/components/Image.cjs +1 -1
- package/dist/Title/components/Image.js +1 -1
- package/dist/TitledPromptCarousel/TitledPromptCarousel.cjs +2 -2
- package/dist/TitledPromptCarousel/TitledPromptCarousel.d.cts +2 -2
- package/dist/TitledPromptCarousel/TitledPromptCarousel.d.ts +2 -2
- package/dist/TitledPromptCarousel/TitledPromptCarousel.js +2 -2
- package/dist/TitledPromptCarousel/types/index.d.ts +1 -1
- package/dist/Tokens/index.cjs +13 -13
- package/dist/Tokens/index.d.ts +13 -13
- package/dist/Tokens/index.js +13 -13
- package/dist/TypingAnimation/TypingAnimation.cjs +3 -3
- package/dist/TypingAnimation/TypingAnimation.d.cts +2 -2
- package/dist/TypingAnimation/TypingAnimation.d.ts +2 -2
- package/dist/TypingAnimation/TypingAnimation.js +3 -3
- package/dist/TypingAnimation/hooks/useGetTypographyVariant.cjs +2 -2
- package/dist/TypingAnimation/hooks/useGetTypographyVariant.js +2 -2
- package/dist/TypingAnimation/types/index.d.ts +1 -1
- package/dist/Typography/Typography.d.cts +4 -4
- package/dist/Typography/Typography.d.ts +4 -4
- package/dist/WelcomeMessage/WelcomeMessage.cjs +1 -1
- package/dist/WelcomeMessage/WelcomeMessage.js +1 -1
- package/dist/WelcomeMessage/components/Container.cjs +2 -2
- package/dist/WelcomeMessage/components/Container.js +2 -2
- package/dist/WelcomeMessage/hooks/useGetContainerProperties.cjs +1 -1
- package/dist/WelcomeMessage/hooks/useGetContainerProperties.js +1 -1
- package/dist/WelcomeMessage/hooks/useGetSparkleIconProperties.cjs +3 -1
- package/dist/WelcomeMessage/hooks/useGetSparkleIconProperties.js +3 -1
- package/dist/WelcomeMessage/types/types.cjs +1 -1
- package/dist/WelcomeMessage/types/types.d.ts +1 -1
- package/dist/WelcomeMessage/types/types.js +1 -1
- package/dist/WidgetTextField/WidgetTextField.cjs +16 -7
- package/dist/WidgetTextField/WidgetTextField.d.cts +4 -2
- package/dist/WidgetTextField/WidgetTextField.d.ts +4 -2
- package/dist/WidgetTextField/WidgetTextField.js +13 -4
- package/dist/WidgetTextField/components/Container.cjs +9 -3
- package/dist/WidgetTextField/components/Container.js +9 -3
- package/dist/WidgetTextField/components/FakeTextInput.cjs +2 -2
- package/dist/WidgetTextField/components/FakeTextInput.js +2 -2
- package/dist/WidgetTextField/components/Icon.cjs +48 -16
- package/dist/WidgetTextField/components/Icon.js +46 -16
- package/dist/WidgetTextField/components/Skeleton.cjs +2 -2
- package/dist/WidgetTextField/components/Skeleton.js +2 -2
- package/dist/WidgetTextField/hooks/useGetContainerProperties.cjs +5 -4
- package/dist/WidgetTextField/hooks/useGetContainerProperties.js +5 -4
- package/dist/WidgetTextField/types/types.cjs +10 -0
- package/dist/WidgetTextField/types/types.d.cts +12 -0
- package/dist/WidgetTextField/types/types.d.ts +13 -1
- package/dist/WidgetTextField/types/types.js +9 -0
- package/dist/WidgetWrapper/WidgetWrapper.d.cts +2 -2
- package/dist/WidgetWrapper/WidgetWrapper.d.ts +2 -2
- package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.cts +2 -2
- package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts +2 -2
- package/dist/node_modules/jotai/esm/react.cjs +44 -0
- package/dist/node_modules/jotai/esm/react.js +42 -0
- package/dist/node_modules/jotai/esm/vanilla/internals.cjs +523 -0
- package/dist/node_modules/jotai/esm/vanilla/internals.js +522 -0
- package/dist/node_modules/jotai/esm/vanilla.cjs +22 -0
- package/dist/node_modules/jotai/esm/vanilla.js +22 -0
- package/dist/{src → packages/components-v3/src}/models/colorsConfig.cjs +1 -3
- package/dist/{src → packages/components-v3/src}/models/colorsConfig.js +1 -2
- package/dist/packages/components-v3/tokens/utils.cjs +14 -0
- package/dist/packages/components-v3/tokens/utils.js +12 -0
- package/dist/styles.css +1 -1
- package/dist/utils/CustomIcon.cjs +1 -1
- package/dist/utils/CustomIcon.js +1 -1
- package/dist/utils/resolveTheme.cjs +1 -1
- package/dist/utils/resolveTheme.js +1 -1
- package/dist/utils/useCheckIsMobile.cjs +1 -1
- package/dist/utils/useCheckIsMobile.js +1 -1
- package/dist/utils/useDragToScroll.cjs +68 -0
- package/dist/utils/useDragToScroll.js +67 -0
- package/dist/utils/useResponsiveValue.cjs +1 -1
- package/dist/utils/useResponsiveValue.d.ts +1 -1
- package/dist/utils/useResponsiveValue.js +1 -1
- package/package.json +9 -1
- package/src/components/AnimatedText/AnimatedText.tsx +27 -6
- package/src/components/AnimatedText/types/types.ts +0 -4
- package/src/components/ChatFooter/hooks/useGetContainerProperties.ts +1 -2
- package/src/components/ChatHeader/components/Handle.tsx +10 -4
- package/src/components/ChatHeader/hooks/useGetHandleProperties.ts +16 -16
- package/src/components/ChatHeader/hooks/useGetLayoutProperties.ts +8 -10
- package/src/components/ChatHeader/hooks/useGetToggleOptionProperties.ts +16 -16
- package/src/components/ChatHeader/hooks/useGetToggleProperties.ts +2 -2
- package/src/components/ChatPreview/ChatPreview.tsx +20 -3
- package/src/components/ChatPreview/__tests__/ChatPreview.test.tsx +17 -8
- package/src/components/ChatPreview/components/Message.tsx +13 -7
- package/src/components/ChatPreview/types/types.ts +5 -4
- package/src/components/ChatPreviewComparison/ChatPreviewComparison.tsx +20 -3
- package/src/components/ChatPreviewComparison/__tests__/ChatPreviewComparison.test.tsx +16 -6
- package/src/components/ChatPreviewComparison/components/Message.tsx +13 -7
- package/src/components/ChatPreviewComparison/types/types.ts +4 -4
- package/src/components/DesignTokens/components/Typography.tsx +1 -1
- package/src/components/Disclaimer/Disclaimer.tsx +27 -0
- package/src/components/Disclaimer/components/Container.tsx +35 -0
- package/src/components/Disclaimer/components/DisclaimerContent.tsx +18 -0
- package/src/components/Disclaimer/components/index.ts +7 -0
- package/src/components/Disclaimer/index.ts +1 -0
- package/src/components/Disclaimer/types/types.ts +27 -0
- package/src/components/FloatingButton/hooks/useGetButtonProperties.ts +4 -3
- package/src/components/FloatingChat/FloatingChat.tsx +42 -20
- package/src/components/FloatingChat/components/AgentMessage.tsx +49 -19
- package/src/components/FloatingChat/components/ChatMessages.tsx +13 -5
- package/src/components/FloatingChat/components/DocumentRetrievalCardsCarousel.tsx +3 -0
- package/src/components/FloatingChat/components/Layout.tsx +32 -5
- package/src/components/FloatingChat/components/MessageDivider.tsx +8 -2
- package/src/components/FloatingChat/components/ModalSheet.tsx +1 -1
- package/src/components/FloatingChat/components/ReviewCardsCarousel.tsx +3 -0
- package/src/components/FloatingChat/hooks/useScrollToBottom.ts +153 -11
- package/src/components/FloatingChat/hooks/useSnapSetup.ts +0 -3
- package/src/components/FloatingChat/types/types.ts +5 -5
- package/src/components/FloatingChat/utils/functions.ts +1 -0
- package/src/components/MarkdownProcessor/components/MarkdownLink.tsx +2 -0
- package/src/components/Message/__tests__/Message.test.tsx +40 -2
- package/src/components/Message/components/AgentContent.tsx +10 -2
- package/src/components/Message/components/LinkButton.tsx +3 -2
- package/src/components/Message/hooks/useGetLinkButtonProperties.ts +1 -1
- package/src/components/ProductCard/ProductCard.tsx +65 -0
- package/src/components/ProductCard/__tests__/ProductCard.test.tsx +191 -0
- package/src/components/ProductCard/components/Carousel.tsx +26 -0
- package/src/components/ProductCard/components/Header.tsx +55 -0
- package/src/components/ProductCard/components/Poster.tsx +15 -0
- package/src/components/ProductCard/components/index.ts +9 -0
- package/src/components/ProductCard/hooks/useGetCarouselProperties.ts +7 -0
- package/src/components/ProductCard/hooks/useGetHeaderProperties.ts +9 -0
- package/src/components/ProductCard/hooks/useGetInputProperties.ts +22 -0
- package/src/components/ProductCard/hooks/useGetPosterProperties.ts +19 -0
- package/src/components/ProductCard/index.ts +2 -0
- package/src/components/ProductCard/types/index.ts +79 -0
- package/src/components/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.tsx +6 -3
- package/src/components/PromptButtonCarouselWithImage/components/Layout.tsx +13 -4
- package/src/components/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.tsx +63 -20
- package/src/components/PromptCarousel/PromptCarousel.tsx +88 -51
- package/src/components/PromptCarousel/hooks/index.ts +2 -4
- package/src/components/PromptCarousel/hooks/useCoordinatedScrollAnimation.ts +115 -0
- package/src/components/PromptCarousel/hooks/useHorizontalScrollAnimation.ts +71 -78
- package/src/components/PromptCarousel/hooks/useScrollSync.ts +83 -0
- package/src/components/SocialProof/SocialProof.tsx +17 -10
- package/src/components/SocialProof/components/Textfield.tsx +4 -0
- package/src/components/SocialProof/index.ts +1 -1
- package/src/components/SocialProof/types/types.ts +12 -0
- package/src/components/TextField/components/Input.tsx +6 -1
- package/src/components/TextField/hooks/useGetContainerProperties.ts +4 -4
- package/src/components/WelcomeMessage/hooks/useGetSparkleIconProperties.ts +5 -2
- package/src/components/WidgetTextField/WidgetTextField.tsx +17 -3
- package/src/components/WidgetTextField/__tests__/WidgetTextField.test.tsx +54 -0
- package/src/components/WidgetTextField/components/Container.tsx +2 -2
- package/src/components/WidgetTextField/components/FakeTextInput.tsx +6 -2
- package/src/components/WidgetTextField/components/Icon.tsx +86 -9
- package/src/components/WidgetTextField/hooks/useGetContainerProperties.ts +5 -3
- package/src/components/WidgetTextField/types/types.ts +13 -0
- package/src/components/utils/useDragToScroll.ts +83 -0
- package/dist/PromptCarousel/components/BlockScrollContainer.cjs +0 -23
- package/dist/PromptCarousel/components/BlockScrollContainer.js +0 -21
- package/dist/PromptCarousel/components/ButtonContainerRow.cjs +0 -34
- package/dist/PromptCarousel/components/ButtonContainerRow.js +0 -32
- package/dist/PromptCarousel/components/CarouselContentWithBlockScroll.cjs +0 -45
- package/dist/PromptCarousel/components/CarouselContentWithBlockScroll.js +0 -44
- package/dist/PromptCarousel/components/CarouselContentWithRowScroll.cjs +0 -33
- package/dist/PromptCarousel/components/CarouselContentWithRowScroll.js +0 -32
- package/dist/PromptCarousel/components/index.cjs +0 -13
- package/dist/PromptCarousel/components/index.js +0 -13
- package/dist/PromptCarousel/hooks/useButtonScrollPosition.cjs +0 -79
- package/dist/PromptCarousel/hooks/useButtonScrollPosition.js +0 -78
- package/dist/PromptCarousel/hooks/useCarouselAnimation.cjs +0 -23
- package/dist/PromptCarousel/hooks/useCarouselAnimation.js +0 -22
- package/dist/PromptCarousel/hooks/useCarouselRefs.cjs +0 -20
- package/dist/PromptCarousel/hooks/useCarouselRefs.js +0 -19
- package/dist/PromptCarousel/hooks/useGetScrollProperties.cjs +0 -18
- package/dist/PromptCarousel/hooks/useGetScrollProperties.js +0 -17
- package/dist/PromptCarousel/hooks/useHorizontalScrollAnimation.cjs +0 -78
- package/dist/PromptCarousel/hooks/useHorizontalScrollAnimation.js +0 -77
- package/dist/tokens/utils.cjs +0 -6
- package/dist/tokens/utils.js +0 -5
- package/src/components/PromptCarousel/components/BlockScrollContainer.tsx +0 -34
- package/src/components/PromptCarousel/components/ButtonContainerRow.tsx +0 -46
- package/src/components/PromptCarousel/components/CarouselContentWithBlockScroll.tsx +0 -83
- package/src/components/PromptCarousel/components/CarouselContentWithRowScroll.tsx +0 -71
- package/src/components/PromptCarousel/components/index.ts +0 -9
- package/src/components/PromptCarousel/hooks/useButtonScrollPosition.ts +0 -128
- package/src/components/PromptCarousel/hooks/useCarouselAnimation.ts +0 -47
- package/src/components/PromptCarousel/hooks/useCarouselRefs.ts +0 -26
- /package/dist/{src → packages/components-v3/src}/models/colorsConfig.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/aspectRatio/aspectRatio.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/aspectRatio/aspectRatio.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/aspectRatio/aspectRatio.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/breakpoints/breakpoints.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/breakpoints/breakpoints.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/breakpoints/breakpoints.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/colors/colors.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/colors/colors.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/colors/colors.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/montion/motion.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/montion/motion.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/montion/motion.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/radius/radius.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/radius/radius.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/radius/radius.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/spacing/spacing.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/spacing/spacing.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/spacing/spacing.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/theme/theme.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/theme/theme.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/theme/theme.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontFamily.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontFamily.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontFamily.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontSize.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontSize.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontSize.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontWeight.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontWeight.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/fontWeight.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/letterSpacing.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/letterSpacing.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/letterSpacing.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/lineHeight.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/lineHeight.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/lineHeight.js +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/typography.cjs +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/typography.d.ts +0 -0
- /package/dist/{tokens → packages/components-v3/tokens}/typography/typography.js +0 -0
|
@@ -1,17 +1,48 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
2
|
const require_resolveTheme = require('../../utils/resolveTheme.cjs');
|
|
3
|
+
const require_Stack = require('../../Stack/Stack.cjs');
|
|
4
|
+
require('../../Stack/index.cjs');
|
|
3
5
|
const require_PromptButton = require('../../PromptButton/PromptButton.cjs');
|
|
4
6
|
require('../../PromptButton/index.cjs');
|
|
7
|
+
const require_useCheckIsMobile = require('../../utils/useCheckIsMobile.cjs');
|
|
5
8
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
6
9
|
|
|
7
10
|
//#region src/components/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.tsx
|
|
11
|
+
function distributeInThreeRows(items) {
|
|
12
|
+
const n = items.length;
|
|
13
|
+
const perRow = [
|
|
14
|
+
1,
|
|
15
|
+
1,
|
|
16
|
+
1
|
|
17
|
+
];
|
|
18
|
+
let remaining = Math.max(0, n - 3);
|
|
19
|
+
let idx = 0;
|
|
20
|
+
while (remaining > 0) {
|
|
21
|
+
perRow[idx % 3] += 1;
|
|
22
|
+
remaining -= 1;
|
|
23
|
+
idx += 1;
|
|
24
|
+
}
|
|
25
|
+
let start = 0;
|
|
26
|
+
const [row0, row1, row2] = perRow.map((count) => {
|
|
27
|
+
const row = items.slice(start, start + count);
|
|
28
|
+
start += count;
|
|
29
|
+
return row;
|
|
30
|
+
});
|
|
31
|
+
return [
|
|
32
|
+
row0,
|
|
33
|
+
row1,
|
|
34
|
+
row2
|
|
35
|
+
];
|
|
36
|
+
}
|
|
8
37
|
const PromptButtonsCarousel = ({ theme, isLoading, promptButtonsTexts, promptButtonType, handlePromptButtonClick }) => {
|
|
9
38
|
const finalTheme = require_resolveTheme.resolveTheme(theme);
|
|
10
|
-
|
|
39
|
+
const { isMobile } = require_useCheckIsMobile.useCheckIsMobile();
|
|
40
|
+
const promptButtonsTextsFinal = isLoading ? [
|
|
11
41
|
"Loading 1...",
|
|
12
42
|
"Loading 2...",
|
|
13
43
|
"Loading 3..."
|
|
14
|
-
] : promptButtonsTexts
|
|
44
|
+
] : promptButtonsTexts || [];
|
|
45
|
+
const renderButton = (text) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
15
46
|
className: "envive-tw-flex-shrink-0",
|
|
16
47
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_PromptButton.PromptButton, {
|
|
17
48
|
id: `prompt-button-${text}`,
|
|
@@ -22,7 +53,26 @@ const PromptButtonsCarousel = ({ theme, isLoading, promptButtonsTexts, promptBut
|
|
|
22
53
|
theme: finalTheme,
|
|
23
54
|
onClick: () => handlePromptButtonClick(text)
|
|
24
55
|
})
|
|
25
|
-
}, text)
|
|
56
|
+
}, text);
|
|
57
|
+
if (isMobile) {
|
|
58
|
+
const [row0, row1, row2] = distributeInThreeRows(promptButtonsTextsFinal);
|
|
59
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Stack.Stack, {
|
|
60
|
+
direction: "column",
|
|
61
|
+
gap: "4",
|
|
62
|
+
className: "envive-tw-w-full",
|
|
63
|
+
children: [
|
|
64
|
+
row0,
|
|
65
|
+
row1,
|
|
66
|
+
row2
|
|
67
|
+
].filter((row) => row.length > 0).map((row) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Stack.Stack, {
|
|
68
|
+
direction: "row",
|
|
69
|
+
gap: "4",
|
|
70
|
+
className: "envive-tw-w-full envive-tw-flex-nowrap",
|
|
71
|
+
children: row.map(renderButton)
|
|
72
|
+
}, row.join("-")))
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: promptButtonsTextsFinal.map(renderButton) });
|
|
26
76
|
};
|
|
27
77
|
|
|
28
78
|
//#endregion
|
|
@@ -1,16 +1,47 @@
|
|
|
1
1
|
import { resolveTheme } from "../../utils/resolveTheme.js";
|
|
2
|
+
import { Stack } from "../../Stack/Stack.js";
|
|
3
|
+
import "../../Stack/index.js";
|
|
2
4
|
import { PromptButton } from "../../PromptButton/PromptButton.js";
|
|
3
5
|
import "../../PromptButton/index.js";
|
|
6
|
+
import { useCheckIsMobile } from "../../utils/useCheckIsMobile.js";
|
|
4
7
|
import { Fragment, jsx } from "react/jsx-runtime";
|
|
5
8
|
|
|
6
9
|
//#region src/components/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.tsx
|
|
10
|
+
function distributeInThreeRows(items) {
|
|
11
|
+
const n = items.length;
|
|
12
|
+
const perRow = [
|
|
13
|
+
1,
|
|
14
|
+
1,
|
|
15
|
+
1
|
|
16
|
+
];
|
|
17
|
+
let remaining = Math.max(0, n - 3);
|
|
18
|
+
let idx = 0;
|
|
19
|
+
while (remaining > 0) {
|
|
20
|
+
perRow[idx % 3] += 1;
|
|
21
|
+
remaining -= 1;
|
|
22
|
+
idx += 1;
|
|
23
|
+
}
|
|
24
|
+
let start = 0;
|
|
25
|
+
const [row0, row1, row2] = perRow.map((count) => {
|
|
26
|
+
const row = items.slice(start, start + count);
|
|
27
|
+
start += count;
|
|
28
|
+
return row;
|
|
29
|
+
});
|
|
30
|
+
return [
|
|
31
|
+
row0,
|
|
32
|
+
row1,
|
|
33
|
+
row2
|
|
34
|
+
];
|
|
35
|
+
}
|
|
7
36
|
const PromptButtonsCarousel = ({ theme, isLoading, promptButtonsTexts, promptButtonType, handlePromptButtonClick }) => {
|
|
8
37
|
const finalTheme = resolveTheme(theme);
|
|
9
|
-
|
|
38
|
+
const { isMobile } = useCheckIsMobile();
|
|
39
|
+
const promptButtonsTextsFinal = isLoading ? [
|
|
10
40
|
"Loading 1...",
|
|
11
41
|
"Loading 2...",
|
|
12
42
|
"Loading 3..."
|
|
13
|
-
] : promptButtonsTexts
|
|
43
|
+
] : promptButtonsTexts || [];
|
|
44
|
+
const renderButton = (text) => /* @__PURE__ */ jsx("div", {
|
|
14
45
|
className: "envive-tw-flex-shrink-0",
|
|
15
46
|
children: /* @__PURE__ */ jsx(PromptButton, {
|
|
16
47
|
id: `prompt-button-${text}`,
|
|
@@ -21,7 +52,26 @@ const PromptButtonsCarousel = ({ theme, isLoading, promptButtonsTexts, promptBut
|
|
|
21
52
|
theme: finalTheme,
|
|
22
53
|
onClick: () => handlePromptButtonClick(text)
|
|
23
54
|
})
|
|
24
|
-
}, text)
|
|
55
|
+
}, text);
|
|
56
|
+
if (isMobile) {
|
|
57
|
+
const [row0, row1, row2] = distributeInThreeRows(promptButtonsTextsFinal);
|
|
58
|
+
return /* @__PURE__ */ jsx(Stack, {
|
|
59
|
+
direction: "column",
|
|
60
|
+
gap: "4",
|
|
61
|
+
className: "envive-tw-w-full",
|
|
62
|
+
children: [
|
|
63
|
+
row0,
|
|
64
|
+
row1,
|
|
65
|
+
row2
|
|
66
|
+
].filter((row) => row.length > 0).map((row) => /* @__PURE__ */ jsx(Stack, {
|
|
67
|
+
direction: "row",
|
|
68
|
+
gap: "4",
|
|
69
|
+
className: "envive-tw-w-full envive-tw-flex-nowrap",
|
|
70
|
+
children: row.map(renderButton)
|
|
71
|
+
}, row.join("-")))
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
return /* @__PURE__ */ jsx(Fragment, { children: promptButtonsTextsFinal.map(renderButton) });
|
|
25
75
|
};
|
|
26
76
|
|
|
27
77
|
//#endregion
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Theme } from "../../tokens/theme/theme.js";
|
|
1
|
+
import { Theme } from "../../packages/components-v3/tokens/theme/theme.js";
|
|
2
2
|
import { PromptButtonVariant } from "../../PromptButton/types/index.js";
|
|
3
3
|
|
|
4
4
|
//#region src/components/PromptButtonCarouselWithImage/types/types.d.ts
|
|
@@ -1,21 +1,23 @@
|
|
|
1
1
|
const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
|
|
2
|
-
const require_theme = require('../tokens/theme/theme.cjs');
|
|
2
|
+
const require_theme = require('../packages/components-v3/tokens/theme/theme.cjs');
|
|
3
|
+
const require_resolveTheme = require('../utils/resolveTheme.cjs');
|
|
3
4
|
const require_Container = require('../Container/Container.cjs');
|
|
4
5
|
require('../Container/index.cjs');
|
|
5
|
-
const
|
|
6
|
+
const require_Stack = require('../Stack/Stack.cjs');
|
|
7
|
+
require('../Stack/index.cjs');
|
|
6
8
|
const require_PromptButton_types_index = require('../PromptButton/types/index.cjs');
|
|
7
9
|
const require_PromptButton = require('../PromptButton/PromptButton.cjs');
|
|
8
10
|
require('../PromptButton/index.cjs');
|
|
9
11
|
const require_useCheckIsMobile = require('../utils/useCheckIsMobile.cjs');
|
|
10
12
|
const require_PromptCarousel_types_types = require('./types/types.cjs');
|
|
11
|
-
const require_useCarouselRefs = require('./hooks/useCarouselRefs.cjs');
|
|
12
13
|
const require_useCarouselButtons = require('./hooks/useCarouselButtons.cjs');
|
|
13
|
-
const
|
|
14
|
+
const require_useCoordinatedScrollAnimation = require('./hooks/useCoordinatedScrollAnimation.cjs');
|
|
15
|
+
const require_useScrollSync = require('./hooks/useScrollSync.cjs');
|
|
14
16
|
require('./hooks/index.cjs');
|
|
15
|
-
const require_index$1 = require('./components/index.cjs');
|
|
16
17
|
const require_functions = require('./utils/functions.cjs');
|
|
17
|
-
let react = require("react");
|
|
18
18
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
19
|
+
let react = require("react");
|
|
20
|
+
let react_indiana_drag_scroll = require("react-indiana-drag-scroll");
|
|
19
21
|
|
|
20
22
|
//#region src/components/PromptCarousel/PromptCarousel.tsx
|
|
21
23
|
const PromptCarousel = ({ id, theme = require_theme.Theme.GLOBAL_CUSTOM, testId, className, style, isLoading = false, promptButtonTexts, promptButtonType = require_PromptButton_types_index.PromptButtonVariant.LIGHT, boldFirstButton = false, handleButtonClick, promptCarouselRows = require_PromptCarousel_types_types.PromptCarouselRows.ALWAYS_ONE, animationSpeed = require_PromptCarousel_types_types.AnimationSpeed.NONE, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, role = "region" }) => {
|
|
@@ -23,21 +25,34 @@ const PromptCarousel = ({ id, theme = require_theme.Theme.GLOBAL_CUSTOM, testId,
|
|
|
23
25
|
const isAnimatedValue = require_functions.isAnimated(animationSpeed);
|
|
24
26
|
const shouldShowTwoRowsValue = require_functions.shouldShowTwoRows(promptCarouselRows, isMobile);
|
|
25
27
|
const finalTheme = require_resolveTheme.resolveTheme(theme);
|
|
26
|
-
const {
|
|
27
|
-
const {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
const { ref: dragScrollRef1 } = (0, react_indiana_drag_scroll.useScrollContainer)();
|
|
29
|
+
const { ref: dragScrollRef2 } = (0, react_indiana_drag_scroll.useScrollContainer)();
|
|
30
|
+
const scrollContainerRef1 = (0, react.useRef)(null);
|
|
31
|
+
const scrollContainerRef2 = (0, react.useRef)(null);
|
|
32
|
+
const setRef1 = (0, react.useCallback)((el) => {
|
|
33
|
+
if (typeof dragScrollRef1 === "function") dragScrollRef1(el);
|
|
34
|
+
scrollContainerRef1.current = el;
|
|
35
|
+
}, [dragScrollRef1]);
|
|
36
|
+
const setRef2 = (0, react.useCallback)((el) => {
|
|
37
|
+
if (typeof dragScrollRef2 === "function") dragScrollRef2(el);
|
|
38
|
+
scrollContainerRef2.current = el;
|
|
39
|
+
}, [dragScrollRef2]);
|
|
40
|
+
const scrollContainerRefs = shouldShowTwoRowsValue ? [scrollContainerRef1, scrollContainerRef2] : [scrollContainerRef1];
|
|
41
|
+
require_useCoordinatedScrollAnimation.useCoordinatedScrollAnimation({
|
|
42
|
+
scrollContainerRefs,
|
|
43
|
+
animationSpeed
|
|
44
|
+
});
|
|
45
|
+
require_useScrollSync.useScrollSync({
|
|
46
|
+
scrollContainerRefs,
|
|
47
|
+
enabled: true
|
|
33
48
|
});
|
|
34
49
|
const { visibleButtonsFirstRow, visibleButtonsSecondRow } = require_useCarouselButtons.useCarouselButtons({
|
|
35
50
|
promptButtonTexts,
|
|
36
51
|
shouldShowTwoRows: shouldShowTwoRowsValue
|
|
37
52
|
});
|
|
38
|
-
const renderButton = (0, react.useCallback)((text, index,
|
|
53
|
+
const renderButton = (0, react.useCallback)((text, index, duplicateIndex = 0) => {
|
|
39
54
|
const textWithoutSpaces = require_functions.removeSpaces(text);
|
|
40
|
-
const buttonId =
|
|
55
|
+
const buttonId = duplicateIndex > 0 ? `${id}-${textWithoutSpaces}-duplicate-${duplicateIndex}` : `${id}-${textWithoutSpaces}`;
|
|
41
56
|
const buttonKey = `button-${buttonId}`;
|
|
42
57
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_PromptButton.PromptButton, {
|
|
43
58
|
id: buttonId,
|
|
@@ -45,7 +60,7 @@ const PromptCarousel = ({ id, theme = require_theme.Theme.GLOBAL_CUSTOM, testId,
|
|
|
45
60
|
variant: promptButtonType,
|
|
46
61
|
theme: finalTheme,
|
|
47
62
|
isLoading,
|
|
48
|
-
bold: boldFirstButton && index === 0,
|
|
63
|
+
bold: boldFirstButton && index === 0 && duplicateIndex === 0,
|
|
49
64
|
onClick: () => handleButtonClick?.(text)
|
|
50
65
|
}, buttonKey);
|
|
51
66
|
}, [
|
|
@@ -56,6 +71,11 @@ const PromptCarousel = ({ id, theme = require_theme.Theme.GLOBAL_CUSTOM, testId,
|
|
|
56
71
|
isLoading,
|
|
57
72
|
finalTheme
|
|
58
73
|
]);
|
|
74
|
+
const renderButtonRow = (buttons, startIndex) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [
|
|
75
|
+
buttons.map((text, i) => renderButton(text, startIndex + i, 0)),
|
|
76
|
+
isAnimatedValue && buttons.map((text, i) => renderButton(text, startIndex + i, 1)),
|
|
77
|
+
isAnimatedValue && buttons.map((text, i) => renderButton(text, startIndex + i, 2))
|
|
78
|
+
] });
|
|
59
79
|
const defaultAriaLabel = ariaLabel || "Prompt carousel with suggested actions";
|
|
60
80
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Container.Container, {
|
|
61
81
|
id,
|
|
@@ -68,25 +88,42 @@ const PromptCarousel = ({ id, theme = require_theme.Theme.GLOBAL_CUSTOM, testId,
|
|
|
68
88
|
"aria-describedby": ariaDescribedBy,
|
|
69
89
|
"aria-busy": isLoading,
|
|
70
90
|
"aria-live": isAnimatedValue && !isLoading ? "polite" : void 0,
|
|
71
|
-
children:
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
91
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Stack.Stack, {
|
|
92
|
+
direction: "column",
|
|
93
|
+
gap: "2",
|
|
94
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
95
|
+
className: "envive-tw-no-scrollbar envive-tw-relative envive-tw-w-full envive-tw-overflow-x-scroll",
|
|
96
|
+
ref: setRef1,
|
|
97
|
+
style: {
|
|
98
|
+
cursor: "grab",
|
|
99
|
+
userSelect: "none"
|
|
100
|
+
},
|
|
101
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
102
|
+
className: "envive-tw-relative envive-tw-inline-block envive-tw-whitespace-nowrap",
|
|
103
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Stack.Stack, {
|
|
104
|
+
direction: "row",
|
|
105
|
+
gap: "2",
|
|
106
|
+
className: "envive-tw-pl-0 envive-tw-h-full envive-tw-items-center",
|
|
107
|
+
children: renderButtonRow(visibleButtonsFirstRow, 0)
|
|
108
|
+
})
|
|
109
|
+
})
|
|
110
|
+
}), shouldShowTwoRowsValue && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
111
|
+
className: "envive-tw-no-scrollbar envive-tw-relative envive-tw-w-full envive-tw-overflow-x-scroll",
|
|
112
|
+
ref: setRef2,
|
|
113
|
+
style: {
|
|
114
|
+
cursor: "grab",
|
|
115
|
+
userSelect: "none"
|
|
116
|
+
},
|
|
117
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
118
|
+
className: "envive-tw-relative envive-tw-inline-block envive-tw-whitespace-nowrap",
|
|
119
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Stack.Stack, {
|
|
120
|
+
direction: "row",
|
|
121
|
+
gap: "2",
|
|
122
|
+
className: "envive-tw-pl-0 envive-tw-h-full envive-tw-items-center",
|
|
123
|
+
children: renderButtonRow(visibleButtonsSecondRow, visibleButtonsFirstRow.length)
|
|
124
|
+
})
|
|
125
|
+
})
|
|
126
|
+
})]
|
|
90
127
|
})
|
|
91
128
|
});
|
|
92
129
|
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PromptCarouselProps } from "./types/types.cjs";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime23 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/PromptCarousel/PromptCarousel.d.ts
|
|
5
5
|
declare const PromptCarousel: ({
|
|
@@ -19,6 +19,6 @@ declare const PromptCarousel: ({
|
|
|
19
19
|
"aria-labelledby": ariaLabelledBy,
|
|
20
20
|
"aria-describedby": ariaDescribedBy,
|
|
21
21
|
role
|
|
22
|
-
}: PromptCarouselProps) =>
|
|
22
|
+
}: PromptCarouselProps) => react_jsx_runtime23.JSX.Element;
|
|
23
23
|
//#endregion
|
|
24
24
|
export { PromptCarousel };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PromptCarouselProps } from "./types/types.js";
|
|
2
|
-
import * as
|
|
2
|
+
import * as react_jsx_runtime20 from "react/jsx-runtime";
|
|
3
3
|
|
|
4
4
|
//#region src/components/PromptCarousel/PromptCarousel.d.ts
|
|
5
5
|
declare const PromptCarousel: ({
|
|
@@ -19,6 +19,6 @@ declare const PromptCarousel: ({
|
|
|
19
19
|
"aria-labelledby": ariaLabelledBy,
|
|
20
20
|
"aria-describedby": ariaDescribedBy,
|
|
21
21
|
role
|
|
22
|
-
}: PromptCarouselProps) =>
|
|
22
|
+
}: PromptCarouselProps) => react_jsx_runtime20.JSX.Element;
|
|
23
23
|
//#endregion
|
|
24
24
|
export { PromptCarousel };
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import { Theme } from "../tokens/theme/theme.js";
|
|
1
|
+
import { Theme } from "../packages/components-v3/tokens/theme/theme.js";
|
|
2
|
+
import { resolveTheme } from "../utils/resolveTheme.js";
|
|
2
3
|
import { Container } from "../Container/Container.js";
|
|
3
4
|
import "../Container/index.js";
|
|
4
|
-
import {
|
|
5
|
+
import { Stack } from "../Stack/Stack.js";
|
|
6
|
+
import "../Stack/index.js";
|
|
5
7
|
import { PromptButtonVariant } from "../PromptButton/types/index.js";
|
|
6
8
|
import { PromptButton } from "../PromptButton/PromptButton.js";
|
|
7
9
|
import "../PromptButton/index.js";
|
|
8
10
|
import { useCheckIsMobile } from "../utils/useCheckIsMobile.js";
|
|
9
11
|
import { AnimationSpeed, PromptCarouselRows } from "./types/types.js";
|
|
10
|
-
import { useCarouselRefs } from "./hooks/useCarouselRefs.js";
|
|
11
12
|
import { useCarouselButtons } from "./hooks/useCarouselButtons.js";
|
|
12
|
-
import {
|
|
13
|
+
import { useCoordinatedScrollAnimation } from "./hooks/useCoordinatedScrollAnimation.js";
|
|
14
|
+
import { useScrollSync } from "./hooks/useScrollSync.js";
|
|
13
15
|
import "./hooks/index.js";
|
|
14
|
-
import { PromptCarouselComponents } from "./components/index.js";
|
|
15
16
|
import { isAnimated, removeSpaces, shouldShowTwoRows } from "./utils/functions.js";
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
17
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
18
|
+
import { useCallback, useRef } from "react";
|
|
19
|
+
import { useScrollContainer } from "react-indiana-drag-scroll";
|
|
18
20
|
|
|
19
21
|
//#region src/components/PromptCarousel/PromptCarousel.tsx
|
|
20
22
|
const PromptCarousel = ({ id, theme = Theme.GLOBAL_CUSTOM, testId, className, style, isLoading = false, promptButtonTexts, promptButtonType = PromptButtonVariant.LIGHT, boldFirstButton = false, handleButtonClick, promptCarouselRows = PromptCarouselRows.ALWAYS_ONE, animationSpeed = AnimationSpeed.NONE, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, "aria-describedby": ariaDescribedBy, role = "region" }) => {
|
|
@@ -22,21 +24,34 @@ const PromptCarousel = ({ id, theme = Theme.GLOBAL_CUSTOM, testId, className, st
|
|
|
22
24
|
const isAnimatedValue = isAnimated(animationSpeed);
|
|
23
25
|
const shouldShowTwoRowsValue = shouldShowTwoRows(promptCarouselRows, isMobile);
|
|
24
26
|
const finalTheme = resolveTheme(theme);
|
|
25
|
-
const {
|
|
26
|
-
const {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
27
|
+
const { ref: dragScrollRef1 } = useScrollContainer();
|
|
28
|
+
const { ref: dragScrollRef2 } = useScrollContainer();
|
|
29
|
+
const scrollContainerRef1 = useRef(null);
|
|
30
|
+
const scrollContainerRef2 = useRef(null);
|
|
31
|
+
const setRef1 = useCallback((el) => {
|
|
32
|
+
if (typeof dragScrollRef1 === "function") dragScrollRef1(el);
|
|
33
|
+
scrollContainerRef1.current = el;
|
|
34
|
+
}, [dragScrollRef1]);
|
|
35
|
+
const setRef2 = useCallback((el) => {
|
|
36
|
+
if (typeof dragScrollRef2 === "function") dragScrollRef2(el);
|
|
37
|
+
scrollContainerRef2.current = el;
|
|
38
|
+
}, [dragScrollRef2]);
|
|
39
|
+
const scrollContainerRefs = shouldShowTwoRowsValue ? [scrollContainerRef1, scrollContainerRef2] : [scrollContainerRef1];
|
|
40
|
+
useCoordinatedScrollAnimation({
|
|
41
|
+
scrollContainerRefs,
|
|
42
|
+
animationSpeed
|
|
43
|
+
});
|
|
44
|
+
useScrollSync({
|
|
45
|
+
scrollContainerRefs,
|
|
46
|
+
enabled: true
|
|
32
47
|
});
|
|
33
48
|
const { visibleButtonsFirstRow, visibleButtonsSecondRow } = useCarouselButtons({
|
|
34
49
|
promptButtonTexts,
|
|
35
50
|
shouldShowTwoRows: shouldShowTwoRowsValue
|
|
36
51
|
});
|
|
37
|
-
const renderButton = useCallback((text, index,
|
|
52
|
+
const renderButton = useCallback((text, index, duplicateIndex = 0) => {
|
|
38
53
|
const textWithoutSpaces = removeSpaces(text);
|
|
39
|
-
const buttonId =
|
|
54
|
+
const buttonId = duplicateIndex > 0 ? `${id}-${textWithoutSpaces}-duplicate-${duplicateIndex}` : `${id}-${textWithoutSpaces}`;
|
|
40
55
|
const buttonKey = `button-${buttonId}`;
|
|
41
56
|
return /* @__PURE__ */ jsx(PromptButton, {
|
|
42
57
|
id: buttonId,
|
|
@@ -44,7 +59,7 @@ const PromptCarousel = ({ id, theme = Theme.GLOBAL_CUSTOM, testId, className, st
|
|
|
44
59
|
variant: promptButtonType,
|
|
45
60
|
theme: finalTheme,
|
|
46
61
|
isLoading,
|
|
47
|
-
bold: boldFirstButton && index === 0,
|
|
62
|
+
bold: boldFirstButton && index === 0 && duplicateIndex === 0,
|
|
48
63
|
onClick: () => handleButtonClick?.(text)
|
|
49
64
|
}, buttonKey);
|
|
50
65
|
}, [
|
|
@@ -55,6 +70,11 @@ const PromptCarousel = ({ id, theme = Theme.GLOBAL_CUSTOM, testId, className, st
|
|
|
55
70
|
isLoading,
|
|
56
71
|
finalTheme
|
|
57
72
|
]);
|
|
73
|
+
const renderButtonRow = (buttons, startIndex) => /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
74
|
+
buttons.map((text, i) => renderButton(text, startIndex + i, 0)),
|
|
75
|
+
isAnimatedValue && buttons.map((text, i) => renderButton(text, startIndex + i, 1)),
|
|
76
|
+
isAnimatedValue && buttons.map((text, i) => renderButton(text, startIndex + i, 2))
|
|
77
|
+
] });
|
|
58
78
|
const defaultAriaLabel = ariaLabel || "Prompt carousel with suggested actions";
|
|
59
79
|
return /* @__PURE__ */ jsx(Container, {
|
|
60
80
|
id,
|
|
@@ -67,25 +87,42 @@ const PromptCarousel = ({ id, theme = Theme.GLOBAL_CUSTOM, testId, className, st
|
|
|
67
87
|
"aria-describedby": ariaDescribedBy,
|
|
68
88
|
"aria-busy": isLoading,
|
|
69
89
|
"aria-live": isAnimatedValue && !isLoading ? "polite" : void 0,
|
|
70
|
-
children:
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
90
|
+
children: /* @__PURE__ */ jsxs(Stack, {
|
|
91
|
+
direction: "column",
|
|
92
|
+
gap: "2",
|
|
93
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
94
|
+
className: "envive-tw-no-scrollbar envive-tw-relative envive-tw-w-full envive-tw-overflow-x-scroll",
|
|
95
|
+
ref: setRef1,
|
|
96
|
+
style: {
|
|
97
|
+
cursor: "grab",
|
|
98
|
+
userSelect: "none"
|
|
99
|
+
},
|
|
100
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
101
|
+
className: "envive-tw-relative envive-tw-inline-block envive-tw-whitespace-nowrap",
|
|
102
|
+
children: /* @__PURE__ */ jsx(Stack, {
|
|
103
|
+
direction: "row",
|
|
104
|
+
gap: "2",
|
|
105
|
+
className: "envive-tw-pl-0 envive-tw-h-full envive-tw-items-center",
|
|
106
|
+
children: renderButtonRow(visibleButtonsFirstRow, 0)
|
|
107
|
+
})
|
|
108
|
+
})
|
|
109
|
+
}), shouldShowTwoRowsValue && /* @__PURE__ */ jsx("div", {
|
|
110
|
+
className: "envive-tw-no-scrollbar envive-tw-relative envive-tw-w-full envive-tw-overflow-x-scroll",
|
|
111
|
+
ref: setRef2,
|
|
112
|
+
style: {
|
|
113
|
+
cursor: "grab",
|
|
114
|
+
userSelect: "none"
|
|
115
|
+
},
|
|
116
|
+
children: /* @__PURE__ */ jsx("div", {
|
|
117
|
+
className: "envive-tw-relative envive-tw-inline-block envive-tw-whitespace-nowrap",
|
|
118
|
+
children: /* @__PURE__ */ jsx(Stack, {
|
|
119
|
+
direction: "row",
|
|
120
|
+
gap: "2",
|
|
121
|
+
className: "envive-tw-pl-0 envive-tw-h-full envive-tw-items-center",
|
|
122
|
+
children: renderButtonRow(visibleButtonsSecondRow, visibleButtonsFirstRow.length)
|
|
123
|
+
})
|
|
124
|
+
})
|
|
125
|
+
})]
|
|
89
126
|
})
|
|
90
127
|
});
|
|
91
128
|
};
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
const require_useHorizontalScrollAnimation = require('./useHorizontalScrollAnimation.cjs');
|
|
2
|
-
const require_useButtonScrollPosition = require('./useButtonScrollPosition.cjs');
|
|
3
|
-
const require_useCarouselRefs = require('./useCarouselRefs.cjs');
|
|
4
1
|
const require_useCarouselButtons = require('./useCarouselButtons.cjs');
|
|
5
|
-
const
|
|
2
|
+
const require_useCoordinatedScrollAnimation = require('./useCoordinatedScrollAnimation.cjs');
|
|
3
|
+
const require_useScrollSync = require('./useScrollSync.cjs');
|
|
@@ -1,7 +1,5 @@
|
|
|
1
|
-
import { useHorizontalScrollAnimation } from "./useHorizontalScrollAnimation.js";
|
|
2
|
-
import { useButtonScrollPosition } from "./useButtonScrollPosition.js";
|
|
3
|
-
import { useCarouselRefs } from "./useCarouselRefs.js";
|
|
4
1
|
import { useCarouselButtons } from "./useCarouselButtons.js";
|
|
5
|
-
import {
|
|
2
|
+
import { useCoordinatedScrollAnimation } from "./useCoordinatedScrollAnimation.js";
|
|
3
|
+
import { useScrollSync } from "./useScrollSync.js";
|
|
6
4
|
|
|
7
5
|
export { };
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
|
|
2
|
+
const require_PromptCarousel_types_types = require('../types/types.cjs');
|
|
3
|
+
let react = require("react");
|
|
4
|
+
|
|
5
|
+
//#region src/components/PromptCarousel/hooks/useCoordinatedScrollAnimation.ts
|
|
6
|
+
function useCoordinatedScrollAnimation({ scrollContainerRefs, animationSpeed = require_PromptCarousel_types_types.AnimationSpeed.NONE }) {
|
|
7
|
+
const resumeTimeoutRef = (0, react.useRef)(null);
|
|
8
|
+
const scrollAnimationRefs = (0, react.useRef)([]);
|
|
9
|
+
const isPausedRef = (0, react.useRef)(false);
|
|
10
|
+
let PIXELS_PER_SECOND = 0;
|
|
11
|
+
switch (animationSpeed) {
|
|
12
|
+
case require_PromptCarousel_types_types.AnimationSpeed.FAST:
|
|
13
|
+
PIXELS_PER_SECOND = 60;
|
|
14
|
+
break;
|
|
15
|
+
case require_PromptCarousel_types_types.AnimationSpeed.SLOW:
|
|
16
|
+
PIXELS_PER_SECOND = 30;
|
|
17
|
+
break;
|
|
18
|
+
default: PIXELS_PER_SECOND = 0;
|
|
19
|
+
}
|
|
20
|
+
const RESUME_DELAY_MS = 1500;
|
|
21
|
+
const isAnimated = animationSpeed !== require_PromptCarousel_types_types.AnimationSpeed.NONE;
|
|
22
|
+
(0, react.useEffect)(() => {
|
|
23
|
+
if (!isAnimated || scrollContainerRefs.length === 0) return void 0;
|
|
24
|
+
const containers = scrollContainerRefs.map((ref) => ref.current).filter((el) => el !== null);
|
|
25
|
+
if (containers.length === 0) return void 0;
|
|
26
|
+
const animationStates = containers.map(() => ({
|
|
27
|
+
lastTimestamp: null,
|
|
28
|
+
accumulatedScroll: 0
|
|
29
|
+
}));
|
|
30
|
+
const step = (timestamp) => {
|
|
31
|
+
if (!isPausedRef.current) containers.forEach((containerElement, index) => {
|
|
32
|
+
const container = containerElement;
|
|
33
|
+
if (container.scrollWidth <= container.clientWidth) return;
|
|
34
|
+
const state = animationStates[index];
|
|
35
|
+
if (state.lastTimestamp === null) state.lastTimestamp = timestamp;
|
|
36
|
+
const delta = timestamp - state.lastTimestamp;
|
|
37
|
+
state.lastTimestamp = timestamp;
|
|
38
|
+
state.accumulatedScroll += PIXELS_PER_SECOND * (delta / 1e3);
|
|
39
|
+
const pixelsToScroll = Math.floor(state.accumulatedScroll);
|
|
40
|
+
if (pixelsToScroll > 0) {
|
|
41
|
+
container.scrollLeft += pixelsToScroll;
|
|
42
|
+
state.accumulatedScroll -= pixelsToScroll;
|
|
43
|
+
if (Math.ceil(container.scrollLeft) >= container.scrollWidth - container.clientWidth) {
|
|
44
|
+
container.scrollLeft = 0;
|
|
45
|
+
state.accumulatedScroll = 0;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
const rafId = requestAnimationFrame(step);
|
|
50
|
+
scrollAnimationRefs.current[0] = rafId;
|
|
51
|
+
};
|
|
52
|
+
scrollAnimationRefs.current[0] = requestAnimationFrame(step);
|
|
53
|
+
const pauseAnimation = () => {
|
|
54
|
+
isPausedRef.current = true;
|
|
55
|
+
if (resumeTimeoutRef.current) {
|
|
56
|
+
clearTimeout(resumeTimeoutRef.current);
|
|
57
|
+
resumeTimeoutRef.current = null;
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const scheduleResumeAnimation = () => {
|
|
61
|
+
resumeTimeoutRef.current = window.setTimeout(() => {
|
|
62
|
+
isPausedRef.current = false;
|
|
63
|
+
animationStates.forEach((stateElement) => {
|
|
64
|
+
const state = stateElement;
|
|
65
|
+
state.lastTimestamp = null;
|
|
66
|
+
});
|
|
67
|
+
}, RESUME_DELAY_MS);
|
|
68
|
+
};
|
|
69
|
+
containers.forEach((container) => {
|
|
70
|
+
container.addEventListener("mouseenter", pauseAnimation);
|
|
71
|
+
container.addEventListener("mouseleave", scheduleResumeAnimation);
|
|
72
|
+
});
|
|
73
|
+
return () => {
|
|
74
|
+
scrollAnimationRefs.current.forEach((rafId) => {
|
|
75
|
+
if (rafId) cancelAnimationFrame(rafId);
|
|
76
|
+
});
|
|
77
|
+
containers.forEach((container) => {
|
|
78
|
+
container.removeEventListener("mouseenter", pauseAnimation);
|
|
79
|
+
container.removeEventListener("mouseleave", scheduleResumeAnimation);
|
|
80
|
+
});
|
|
81
|
+
if (resumeTimeoutRef.current) clearTimeout(resumeTimeoutRef.current);
|
|
82
|
+
};
|
|
83
|
+
}, [
|
|
84
|
+
isAnimated,
|
|
85
|
+
PIXELS_PER_SECOND,
|
|
86
|
+
scrollContainerRefs
|
|
87
|
+
]);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
//#endregion
|
|
91
|
+
exports.useCoordinatedScrollAnimation = useCoordinatedScrollAnimation;
|