@envive-ai/react-toolkit-v3 0.3.9 → 0.3.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/dist/AnimatedText/AnimatedText.d.cts +3 -3
  2. package/dist/AnimatedText/AnimatedText.d.ts +3 -3
  3. package/dist/CSSVariablesEditor/CssVariablesEditorComponent.d.cts +2 -2
  4. package/dist/CSSVariablesEditor/CssVariablesEditorComponent.d.ts +2 -2
  5. package/dist/CSSVariablesEditor/components/CSSVariablesEditor.cjs +1 -1
  6. package/dist/CSSVariablesEditor/components/CSSVariablesEditor.js +1 -1
  7. package/dist/Carousel/Carousel.cjs +1 -1
  8. package/dist/Carousel/Carousel.d.cts +2 -2
  9. package/dist/Carousel/Carousel.d.ts +2 -2
  10. package/dist/Carousel/Carousel.js +1 -1
  11. package/dist/Carousel/components/Container.cjs +3 -3
  12. package/dist/Carousel/components/Container.js +3 -3
  13. package/dist/ChatFooter/ChatFooter.cjs +1 -1
  14. package/dist/ChatFooter/ChatFooter.d.cts +2 -2
  15. package/dist/ChatFooter/ChatFooter.js +1 -1
  16. package/dist/ChatFooter/components/Layout.cjs +2 -2
  17. package/dist/ChatFooter/components/Layout.js +2 -2
  18. package/dist/ChatFooter/components/index.d.cts +5 -5
  19. package/dist/ChatFooter/components/index.d.ts +5 -5
  20. package/dist/ChatHeader/ChatHeader.d.cts +2 -2
  21. package/dist/ChatHeader/ChatHeader.d.ts +2 -2
  22. package/dist/ChatHeader/components/Handle.cjs +2 -2
  23. package/dist/ChatHeader/components/Handle.js +2 -2
  24. package/dist/ChatHeader/components/Toggle.cjs +3 -3
  25. package/dist/ChatHeader/components/Toggle.js +3 -3
  26. package/dist/ChatHeader/hooks/useGetCloseButtonProperties.cjs +1 -1
  27. package/dist/ChatHeader/hooks/useGetCloseButtonProperties.js +1 -1
  28. package/dist/ChatPreview/ChatPreview.cjs +2 -2
  29. package/dist/ChatPreview/ChatPreview.d.cts +2 -2
  30. package/dist/ChatPreview/ChatPreview.d.ts +2 -2
  31. package/dist/ChatPreview/ChatPreview.js +2 -2
  32. package/dist/ChatPreview/components/Message.cjs +1 -1
  33. package/dist/ChatPreview/components/Message.js +1 -1
  34. package/dist/ChatPreviewComparison/ChatPreviewComparison.cjs +2 -2
  35. package/dist/ChatPreviewComparison/ChatPreviewComparison.d.cts +2 -2
  36. package/dist/ChatPreviewComparison/ChatPreviewComparison.d.ts +2 -2
  37. package/dist/ChatPreviewComparison/ChatPreviewComparison.js +2 -2
  38. package/dist/ChatPreviewComparison/components/Headline.cjs +2 -2
  39. package/dist/ChatPreviewComparison/components/Headline.js +2 -2
  40. package/dist/ChatPreviewComparison/components/Layout.cjs +4 -4
  41. package/dist/ChatPreviewComparison/components/Layout.js +4 -4
  42. package/dist/ChatPreviewComparison/components/Message.cjs +3 -3
  43. package/dist/ChatPreviewComparison/components/Message.js +3 -3
  44. package/dist/ChatPreviewLoading/ChatPreviewLoading.cjs +1 -1
  45. package/dist/ChatPreviewLoading/ChatPreviewLoading.d.cts +2 -2
  46. package/dist/ChatPreviewLoading/ChatPreviewLoading.d.ts +2 -2
  47. package/dist/ChatPreviewLoading/ChatPreviewLoading.js +1 -1
  48. package/dist/Container/Container.d.cts +178 -178
  49. package/dist/Container/Container.d.ts +7 -7
  50. package/dist/DesignTokens/DesignTokensComponent.cjs +1 -1
  51. package/dist/DesignTokens/DesignTokensComponent.d.cts +2 -2
  52. package/dist/DesignTokens/DesignTokensComponent.d.ts +2 -2
  53. package/dist/DesignTokens/DesignTokensComponent.js +1 -1
  54. package/dist/Disclaimer/components/Container.cjs +2 -2
  55. package/dist/Disclaimer/components/Container.js +2 -2
  56. package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.cts +2 -2
  57. package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.ts +2 -2
  58. package/dist/DocumentRetrievalCard/components/Layout.cjs +2 -2
  59. package/dist/DocumentRetrievalCard/components/Layout.js +2 -2
  60. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.cjs +1 -1
  61. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.js +1 -1
  62. package/dist/FloatingButton/FloatingButton.d.cts +2 -2
  63. package/dist/FloatingButton/FloatingButton.d.ts +2 -2
  64. package/dist/FloatingChat/FloatingChat.cjs +6 -4
  65. package/dist/FloatingChat/FloatingChat.d.cts +3 -2
  66. package/dist/FloatingChat/FloatingChat.d.ts +3 -2
  67. package/dist/FloatingChat/FloatingChat.js +6 -4
  68. package/dist/FloatingChat/components/ChatMessages.cjs +2 -2
  69. package/dist/FloatingChat/components/ChatMessages.js +2 -2
  70. package/dist/FloatingChat/components/Layout.cjs +9 -5
  71. package/dist/FloatingChat/components/Layout.js +9 -5
  72. package/dist/FloatingChat/components/ModalSheet.cjs +6 -7
  73. package/dist/FloatingChat/components/ModalSheet.js +6 -7
  74. package/dist/FloatingChat/components/SalesAgentProductCardsCarousel.cjs +1 -3
  75. package/dist/FloatingChat/components/SalesAgentProductCardsCarousel.js +1 -3
  76. package/dist/FloatingChat/components/ScrollToBottomButton.cjs +1 -1
  77. package/dist/FloatingChat/components/ScrollToBottomButton.js +1 -1
  78. package/dist/FloatingChat/types/types.d.cts +4 -0
  79. package/dist/FloatingChat/types/types.d.ts +4 -0
  80. package/dist/Form/Form.cjs +1 -1
  81. package/dist/Form/Form.js +1 -1
  82. package/dist/FullPageSalesAgent/FullPageSalesAgent.cjs +131 -0
  83. package/dist/FullPageSalesAgent/FullPageSalesAgent.d.cts +24 -0
  84. package/dist/FullPageSalesAgent/FullPageSalesAgent.d.ts +24 -0
  85. package/dist/FullPageSalesAgent/FullPageSalesAgent.js +130 -0
  86. package/dist/FullPageSalesAgent/components/Layout.cjs +53 -0
  87. package/dist/FullPageSalesAgent/components/Layout.js +51 -0
  88. package/dist/FullPageSalesAgent/components/index.cjs +7 -0
  89. package/dist/FullPageSalesAgent/components/index.js +7 -0
  90. package/dist/FullPageSalesAgent/hooks/useContainerResizerObserver.cjs +23 -0
  91. package/dist/FullPageSalesAgent/hooks/useContainerResizerObserver.js +22 -0
  92. package/dist/FullPageSalesAgent/hooks/useGetContainerStyles.cjs +16 -0
  93. package/dist/FullPageSalesAgent/hooks/useGetContainerStyles.js +16 -0
  94. package/dist/FullPageSalesAgent/hooks/useGetFooterStyles.cjs +16 -0
  95. package/dist/FullPageSalesAgent/hooks/useGetFooterStyles.js +16 -0
  96. package/dist/FullPageSalesAgent/hooks/useGetScrollContentStyles.cjs +19 -0
  97. package/dist/FullPageSalesAgent/hooks/useGetScrollContentStyles.js +17 -0
  98. package/dist/FullPageSalesAgent/hooks/useIsMobile.cjs +7 -0
  99. package/dist/FullPageSalesAgent/hooks/useIsMobile.js +7 -0
  100. package/dist/FullPageSalesAgent/index.cjs +3 -0
  101. package/dist/FullPageSalesAgent/index.d.cts +2 -0
  102. package/dist/FullPageSalesAgent/index.d.ts +2 -0
  103. package/dist/FullPageSalesAgent/index.js +3 -0
  104. package/dist/Image/Image.d.cts +2 -2
  105. package/dist/Image/Image.d.ts +2 -2
  106. package/dist/ImageGallery/ImageGallery.d.cts +2 -2
  107. package/dist/ImageGallery/ImageGallery.d.ts +2 -2
  108. package/dist/ImageGallery/components/Layout.cjs +1 -1
  109. package/dist/ImageGallery/components/Layout.js +1 -1
  110. package/dist/ImageGallery/components/NormalLayout.cjs +1 -1
  111. package/dist/ImageGallery/components/NormalLayout.js +1 -1
  112. package/dist/MarkdownProcessor/MarkdownProcessor.cjs +1 -1
  113. package/dist/MarkdownProcessor/MarkdownProcessor.d.cts +2 -2
  114. package/dist/MarkdownProcessor/MarkdownProcessor.d.ts +2 -2
  115. package/dist/MarkdownProcessor/MarkdownProcessor.js +1 -1
  116. package/dist/Message/components/AgentContent.cjs +1 -1
  117. package/dist/Message/components/AgentContent.js +1 -1
  118. package/dist/Message/components/LinkButton.cjs +1 -1
  119. package/dist/Message/components/LinkButton.js +1 -1
  120. package/dist/Message/hooks/useVariantStyleProperties.cjs +1 -1
  121. package/dist/Message/hooks/useVariantStyleProperties.js +1 -1
  122. package/dist/OrderLookupCard/OrderLookupCard.cjs +1 -1
  123. package/dist/OrderLookupCard/OrderLookupCard.js +1 -1
  124. package/dist/ProductCard/ProductCard.cjs +2 -2
  125. package/dist/ProductCard/ProductCard.d.cts +2 -2
  126. package/dist/ProductCard/ProductCard.d.ts +2 -2
  127. package/dist/ProductCard/ProductCard.js +2 -2
  128. package/dist/ProductCard/components/Header.cjs +1 -1
  129. package/dist/ProductCard/components/Header.js +1 -1
  130. package/dist/PromptButton/PromptButton.d.cts +2 -2
  131. package/dist/PromptButton/PromptButton.d.ts +2 -2
  132. package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.cts +2 -2
  133. package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.ts +2 -2
  134. package/dist/PromptButtonCarouselWithImage/components/Layout.cjs +1 -1
  135. package/dist/PromptButtonCarouselWithImage/components/Layout.js +1 -1
  136. package/dist/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.cjs +1 -1
  137. package/dist/PromptButtonCarouselWithImage/components/PromptButtonsCarousel.js +1 -1
  138. package/dist/PromptCarousel/PromptCarousel.cjs +5 -4
  139. package/dist/PromptCarousel/PromptCarousel.d.cts +2 -2
  140. package/dist/PromptCarousel/PromptCarousel.d.ts +2 -2
  141. package/dist/PromptCarousel/PromptCarousel.js +5 -4
  142. package/dist/ReviewCard/ReviewCard.cjs +1 -1
  143. package/dist/ReviewCard/ReviewCard.d.ts +2 -2
  144. package/dist/ReviewCard/ReviewCard.js +1 -1
  145. package/dist/ReviewCard/components/Container.cjs +2 -2
  146. package/dist/ReviewCard/components/Container.js +2 -2
  147. package/dist/ReviewCard/components/ReadMoreButton.cjs +1 -1
  148. package/dist/ReviewCard/components/ReadMoreButton.js +1 -1
  149. package/dist/ReviewCard/components/index.d.cts +6 -6
  150. package/dist/ReviewCard/components/index.d.ts +6 -6
  151. package/dist/SalesAgentProductCard/SalesAgentProductCard.cjs +2 -1
  152. package/dist/SalesAgentProductCard/SalesAgentProductCard.d.cts +3 -2
  153. package/dist/SalesAgentProductCard/SalesAgentProductCard.d.ts +3 -2
  154. package/dist/SalesAgentProductCard/SalesAgentProductCard.js +2 -1
  155. package/dist/SalesAgentProductCard/components/Container.cjs +9 -7
  156. package/dist/SalesAgentProductCard/components/Container.d.cts +2 -1
  157. package/dist/SalesAgentProductCard/components/Container.d.ts +2 -1
  158. package/dist/SalesAgentProductCard/components/Container.js +9 -7
  159. package/dist/SalesAgentProductCard/components/index.d.cts +9 -8
  160. package/dist/SalesAgentProductCard/components/index.d.ts +9 -8
  161. package/dist/SalesAgentProductCard/types/types.d.cts +4 -0
  162. package/dist/SalesAgentProductCard/types/types.d.ts +4 -0
  163. package/dist/SocialProof/SocialProof.cjs +1 -1
  164. package/dist/SocialProof/SocialProof.d.cts +2 -2
  165. package/dist/SocialProof/SocialProof.d.ts +2 -2
  166. package/dist/SocialProof/SocialProof.js +1 -1
  167. package/dist/SocialProof/components/Headline.cjs +4 -4
  168. package/dist/SocialProof/components/Headline.js +4 -4
  169. package/dist/SocialProof/components/LayoutFourHorizontal.cjs +1 -1
  170. package/dist/SocialProof/components/LayoutFourHorizontal.js +1 -1
  171. package/dist/SocialProof/components/LayoutSingle.cjs +1 -1
  172. package/dist/SocialProof/components/LayoutSingle.js +1 -1
  173. package/dist/SocialProof/components/Subheadline.cjs +1 -1
  174. package/dist/SocialProof/components/Subheadline.js +1 -1
  175. package/dist/Stack/Stack.d.cts +2 -2
  176. package/dist/Stack/Stack.d.ts +2 -2
  177. package/dist/Stack/hooks/useFormatStackChildren.cjs +1 -1
  178. package/dist/Stack/hooks/useFormatStackChildren.js +1 -1
  179. package/dist/TextField/utils/getIconColor.cjs +1 -1
  180. package/dist/TextField/utils/getIconColor.js +1 -1
  181. package/dist/TextField/utils/getSendIconElement.cjs +1 -1
  182. package/dist/TextField/utils/getSendIconElement.js +1 -1
  183. package/dist/Title/components/Image.cjs +1 -1
  184. package/dist/Title/components/Image.js +1 -1
  185. package/dist/TitledPromptCarousel/TitledPromptCarousel.cjs +1 -1
  186. package/dist/TitledPromptCarousel/TitledPromptCarousel.d.cts +2 -2
  187. package/dist/TitledPromptCarousel/TitledPromptCarousel.d.ts +2 -2
  188. package/dist/TitledPromptCarousel/TitledPromptCarousel.js +1 -1
  189. package/dist/Tokens/index.cjs +1 -1
  190. package/dist/Tokens/index.js +1 -1
  191. package/dist/TypingAnimation/TypingAnimation.cjs +3 -3
  192. package/dist/TypingAnimation/TypingAnimation.d.cts +2 -2
  193. package/dist/TypingAnimation/TypingAnimation.d.ts +2 -2
  194. package/dist/TypingAnimation/TypingAnimation.js +3 -3
  195. package/dist/TypingAnimation/hooks/useGetTypographyVariant.cjs +1 -1
  196. package/dist/TypingAnimation/hooks/useGetTypographyVariant.js +1 -1
  197. package/dist/Typography/Typography.d.cts +4 -4
  198. package/dist/Typography/Typography.d.ts +4 -4
  199. package/dist/WelcomeMessage/components/Container.cjs +2 -2
  200. package/dist/WelcomeMessage/components/Container.js +2 -2
  201. package/dist/WidgetTextField/WidgetTextField.cjs +1 -1
  202. package/dist/WidgetTextField/WidgetTextField.d.cts +2 -2
  203. package/dist/WidgetTextField/WidgetTextField.d.ts +2 -2
  204. package/dist/WidgetTextField/WidgetTextField.js +1 -1
  205. package/dist/WidgetTextField/components/Container.cjs +2 -2
  206. package/dist/WidgetTextField/components/Container.js +2 -2
  207. package/dist/WidgetTextField/components/Icon.cjs +3 -2
  208. package/dist/WidgetTextField/components/Icon.js +3 -2
  209. package/dist/WidgetTextField/components/Skeleton.cjs +1 -1
  210. package/dist/WidgetTextField/components/Skeleton.js +1 -1
  211. package/dist/WidgetWrapper/WidgetWrapper.d.cts +2 -2
  212. package/dist/WidgetWrapper/WidgetWrapper.d.ts +2 -2
  213. package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.cts +2 -2
  214. package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts +2 -2
  215. package/dist/styles.css +1 -1
  216. package/dist/utils/CustomIcon.cjs +2 -2
  217. package/dist/utils/CustomIcon.js +2 -2
  218. package/package.json +5 -1
  219. package/src/components/ChatHeader/hooks/useGetCloseButtonProperties.ts +1 -1
  220. package/src/components/FloatingChat/FloatingChat.tsx +7 -1
  221. package/src/components/FloatingChat/components/Layout.tsx +3 -0
  222. package/src/components/FloatingChat/components/ModalSheet.tsx +5 -7
  223. package/src/components/FloatingChat/components/SalesAgentProductCardsCarousel.tsx +4 -6
  224. package/src/components/FloatingChat/types/types.ts +4 -0
  225. package/src/components/FullPageSalesAgent/FullPageSalesAgent.tsx +199 -0
  226. package/src/components/FullPageSalesAgent/components/Layout.tsx +81 -0
  227. package/src/components/FullPageSalesAgent/components/index.ts +5 -0
  228. package/src/components/FullPageSalesAgent/hooks/useContainerResizerObserver.ts +33 -0
  229. package/src/components/FullPageSalesAgent/hooks/useGetContainerStyles.ts +24 -0
  230. package/src/components/FullPageSalesAgent/hooks/useGetFooterStyles.ts +17 -0
  231. package/src/components/FullPageSalesAgent/hooks/useGetScrollContentStyles.ts +17 -0
  232. package/src/components/FullPageSalesAgent/hooks/useIsMobile.ts +3 -0
  233. package/src/components/FullPageSalesAgent/index.ts +1 -0
  234. package/src/components/Message/hooks/useVariantStyleProperties.ts +1 -1
  235. package/src/components/PromptCarousel/PromptCarousel.tsx +1 -0
  236. package/src/components/SalesAgentProductCard/SalesAgentProductCard.tsx +2 -0
  237. package/src/components/SalesAgentProductCard/components/Container.tsx +16 -9
  238. package/src/components/SalesAgentProductCard/types/types.ts +4 -0
  239. package/src/components/TextField/utils/getIconColor.ts +1 -1
  240. package/src/components/TextField/utils/getSendIconElement.tsx +3 -1
  241. package/src/components/WidgetTextField/components/Icon.tsx +1 -0
  242. package/src/components/utils/CustomIcon.tsx +1 -1
@@ -0,0 +1,81 @@
1
+ import classNames from 'classnames';
2
+ import { isValidElement } from 'react';
3
+ import { Stack } from 'src/components/Stack';
4
+ import { Theme } from 'tokens/theme/theme';
5
+ import { useGetContainerStyles } from '../hooks/useGetContainerStyles';
6
+ import { useGetFooterStyles } from '../hooks/useGetFooterStyles';
7
+ import { useGetScrollContentStyles } from '../hooks/useGetScrollContentStyles';
8
+
9
+ export interface LayoutProps {
10
+ theme: Theme;
11
+ welcomeMessage: React.ReactNode;
12
+ footer?: React.ReactNode;
13
+ chatMessages?: React.ReactNode;
14
+ answerSuggestions?: React.ReactNode;
15
+ scrollToBottomButton?: React.ReactNode;
16
+ disclaimer?: React.ReactNode;
17
+ headerContainer?: string;
18
+ autoHeight?: boolean;
19
+ }
20
+
21
+ export const Layout = ({
22
+ theme,
23
+ welcomeMessage,
24
+ footer,
25
+ chatMessages,
26
+ answerSuggestions,
27
+ scrollToBottomButton,
28
+ disclaimer,
29
+ headerContainer,
30
+ autoHeight,
31
+ }: LayoutProps) => {
32
+ const hasWelcomeMessage = isValidElement(welcomeMessage);
33
+ const hasAnswerSuggestions = isValidElement(answerSuggestions);
34
+ const { contentClasses, messageContainerClasses } = useGetScrollContentStyles();
35
+ const { footerContainerClasses } = useGetFooterStyles();
36
+ const { containerClasses, containerStyles } = useGetContainerStyles({
37
+ headerContainer,
38
+ autoHeight,
39
+ });
40
+
41
+ return (
42
+ <div
43
+ className={containerClasses}
44
+ style={containerStyles}
45
+ >
46
+ <div className={contentClasses}>
47
+ <Stack
48
+ className={messageContainerClasses}
49
+ direction="column"
50
+ justify="between"
51
+ >
52
+ {welcomeMessage}
53
+ {disclaimer}
54
+ </Stack>
55
+ <Stack
56
+ direction="column"
57
+ gap="0"
58
+ className={classNames(
59
+ (!hasWelcomeMessage || (hasWelcomeMessage && theme === Theme.STANDARD)) &&
60
+ !hasAnswerSuggestions &&
61
+ 'envive-tw-pb-4',
62
+ 'envive-tw-pt-4',
63
+ )}
64
+ >
65
+ {chatMessages}
66
+ {answerSuggestions}
67
+ </Stack>
68
+ </div>
69
+ <div className={footerContainerClasses}>
70
+ {scrollToBottomButton && (
71
+ <div className="envive-tw-h-[0px]">
72
+ <div className="envive-tw-ml-auto envive-tw-table envive-tw-translate-x-[-30px] envive-tw-translate-y-[-50px]">
73
+ {scrollToBottomButton}
74
+ </div>
75
+ </div>
76
+ )}
77
+ {footer}
78
+ </div>
79
+ </div>
80
+ );
81
+ };
@@ -0,0 +1,5 @@
1
+ import { Layout } from './Layout';
2
+
3
+ export const FullPageSAComponents = {
4
+ Layout,
5
+ };
@@ -0,0 +1,33 @@
1
+ import { useEffect, useState } from 'react';
2
+
3
+ export const useContainerResizerObserver = ({
4
+ headerContainer,
5
+ autoHeight,
6
+ }: {
7
+ headerContainer?: string;
8
+ autoHeight?: boolean;
9
+ }) => {
10
+ const [containerHeight, setContainerHeight] = useState<number | string>('100%');
11
+
12
+ useEffect(() => {
13
+ if (!autoHeight) {
14
+ return null;
15
+ }
16
+
17
+ const watchResizing = () => {
18
+ const header = document.querySelector(headerContainer)?.getBoundingClientRect()?.height || 0;
19
+ setContainerHeight(window.innerHeight - header);
20
+ };
21
+
22
+ window.addEventListener('resize', watchResizing);
23
+ watchResizing();
24
+
25
+ return () => {
26
+ window.removeEventListener('resize', watchResizing);
27
+ };
28
+ }, [headerContainer, autoHeight]);
29
+
30
+ return {
31
+ containerHeight,
32
+ };
33
+ };
@@ -0,0 +1,24 @@
1
+ import { useContainerResizerObserver } from './useContainerResizerObserver';
2
+
3
+ export const useGetContainerStyles = ({
4
+ headerContainer,
5
+ autoHeight,
6
+ }: {
7
+ headerContainer?: string;
8
+ autoHeight?: boolean;
9
+ }) => {
10
+ const { containerHeight } = useContainerResizerObserver({
11
+ headerContainer,
12
+ autoHeight,
13
+ });
14
+
15
+ const containerClasses =
16
+ 'envive-tw-mx-auto envive-tw-flex envive-tw-h-full envive-tw-max-w-[768px] envive-tw-flex-col';
17
+
18
+ const containerStyles = { height: containerHeight };
19
+
20
+ return {
21
+ containerClasses,
22
+ containerStyles,
23
+ };
24
+ };
@@ -0,0 +1,17 @@
1
+ import { useIsMobile } from './useIsMobile';
2
+
3
+ export const useGetFooterStyles = () => {
4
+ const { isMobile } = useIsMobile();
5
+ const footerStyles = !isMobile
6
+ ? { boxShadow: '0px 2px 10px 0px rgba(0, 0, 0, 0.2)', borderWidth: '1px' }
7
+ : null;
8
+
9
+ const footerContainerClasses = isMobile
10
+ ? 'envive-tw-absolute envive-tw-bottom-[0] envive-tw-left-[0] envive-tw-right-[0]'
11
+ : 'envive-tw-pb-5';
12
+
13
+ return {
14
+ footerStyles,
15
+ footerContainerClasses,
16
+ };
17
+ };
@@ -0,0 +1,17 @@
1
+ import classNames from 'classnames';
2
+ import { useIsMobile } from './useIsMobile';
3
+
4
+ export const useGetScrollContentStyles = () => {
5
+ const { isMobile } = useIsMobile();
6
+ const contentClasses = classNames({
7
+ 'envive-tw-flex-1 envive-tw-overflow-y-auto envive-tw-overflow-x-hidden envive-tw-transition-all envive-tw-duration-300 envive-tw-ease-in-out': true,
8
+ 'envive-tw-pb-[131px]': isMobile,
9
+ });
10
+
11
+ const messageContainerClasses = !isMobile ? 'envive-tw-pt-4' : null;
12
+
13
+ return {
14
+ contentClasses,
15
+ messageContainerClasses,
16
+ };
17
+ };
@@ -0,0 +1,3 @@
1
+ import { useCheckIsMobile } from 'src/components/utils/useCheckIsMobile';
2
+
3
+ export const useIsMobile = () => useCheckIsMobile('md');
@@ -0,0 +1 @@
1
+ export { FullPageSalesAgent } from './FullPageSalesAgent';
@@ -20,7 +20,7 @@ export const useVariantStyleProperties = (
20
20
  const variantStylesMap: Record<MessageVariant, VariantStylesProperties> = {
21
21
  [MessageVariant.AGENT]: {
22
22
  containerLayoutClasses: 'envive-tw-flex envive-tw-flex-col envive-tw-gap-2',
23
- containerBackgroundClasses: 'envive-tw-bg-background-light',
23
+ containerBackgroundClasses: '',
24
24
  containerBorderClasses: '',
25
25
  containerRadiusClasses: 'envive-tw-rounded-md',
26
26
  contentClasses: '',
@@ -123,6 +123,7 @@ export const PromptCarousel = ({
123
123
  >
124
124
  <Stack
125
125
  direction="column"
126
+ className={animationSpeed === AnimationSpeed.NONE ? 'envive-tw-w-full' : ''}
126
127
  gap="2"
127
128
  >
128
129
  <div
@@ -29,6 +29,7 @@ export const SalesAgentProductCard = ({
29
29
  rate,
30
30
  image,
31
31
  url,
32
+ target,
32
33
  onClick,
33
34
  }: SalesAgentProductCardProps) => {
34
35
  const finalTheme = resolveTheme(theme);
@@ -42,6 +43,7 @@ export const SalesAgentProductCard = ({
42
43
  theme={finalTheme}
43
44
  variant={variant}
44
45
  url={url}
46
+ target={target}
45
47
  onClick={onClick}
46
48
  productName={
47
49
  <SalesAgentProductCardComponents.ProductName
@@ -1,10 +1,10 @@
1
1
  import classNames from 'classnames';
2
+ import { Theme } from '../../../../tokens/theme/theme';
3
+ import { Container as ContainerComponent } from '../../Container';
2
4
  import { Stack } from '../../Stack';
3
- import { SalesAgentProductCardVariant } from '../types/types';
4
5
  import { useGetContainerProperties } from '../hooks/useGetContainerProperties';
5
6
  import { useGetProductDescriptionProperties } from '../hooks/useGetProductDescriptionProperties';
6
- import { Container as ContainerComponent } from '../../Container';
7
- import { Theme } from '../../../../tokens/theme/theme';
7
+ import { SalesAgentProductCardProps, SalesAgentProductCardVariant } from '../types/types';
8
8
 
9
9
  export type ContainerProps = {
10
10
  id?: string;
@@ -18,6 +18,7 @@ export type ContainerProps = {
18
18
  rate: React.ReactNode;
19
19
  image: React.ReactNode;
20
20
  url: string;
21
+ target?: SalesAgentProductCardProps['target'];
21
22
  onClick?: () => void | Promise<void>;
22
23
  };
23
24
 
@@ -33,6 +34,7 @@ export const Container = ({
33
34
  rate,
34
35
  image,
35
36
  url,
37
+ target = '_self',
36
38
  onClick,
37
39
  }: ContainerProps) => {
38
40
  const { baseClassName, themeContainerClassNames, containerDirection, containerWidthClassName } =
@@ -48,12 +50,17 @@ export const Container = ({
48
50
  variant,
49
51
  });
50
52
 
51
- const anchorProps: React.AnchorHTMLAttributes<HTMLAnchorElement> = {
52
- href: url,
53
- onClick,
54
- target: '_self',
55
- draggable: false,
56
- };
53
+ const anchorProps: React.AnchorHTMLAttributes<HTMLAnchorElement> =
54
+ target !== 'none'
55
+ ? {
56
+ href: url,
57
+ onClick,
58
+ target,
59
+ draggable: false,
60
+ }
61
+ : {
62
+ onClick,
63
+ };
57
64
 
58
65
  return (
59
66
  <ContainerComponent
@@ -71,6 +71,10 @@ export type SalesAgentProductCardProps = {
71
71
  * The URL to navigate to when the card is clicked.
72
72
  */
73
73
  url?: string;
74
+ /**
75
+ * The URL target to be applied.
76
+ */
77
+ target?: React.AnchorHTMLAttributes<HTMLAnchorElement>['target'] | 'none';
74
78
  /**
75
79
  * Callback function called when the card is clicked.
76
80
  */
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const getIconColor = (hasValue: boolean, disabled: boolean): string => {
5
5
  if (disabled || !hasValue) {
6
- return 'var(--envive-colors-border-medium)';
6
+ return 'var(--envive-colors-border-light)';
7
7
  }
8
8
  return 'var(--envive-colors-text-primary)';
9
9
  };
@@ -30,7 +30,9 @@ export const getSendIconElement = (
30
30
  <CustomIcon
31
31
  IconComponent={<SendModern />}
32
32
  fill={iconColor}
33
- stroke={iconColor}
33
+ stroke={
34
+ hasValue ? 'var(--envive-colors-background-light)' : 'var(--envive-colors-border-dark)'
35
+ }
34
36
  />
35
37
  );
36
38
  case Theme.MINIMAL:
@@ -53,6 +53,7 @@ export const Icon = ({ variant, theme, textColor }: IconProps) => {
53
53
  ? `var(--envive-colors-${textColor})`
54
54
  : 'var(--envive-colors-border-medium)'
55
55
  }
56
+ stroke="var(--envive-colors-border-dark)"
56
57
  />
57
58
  );
58
59
  }
@@ -19,7 +19,7 @@ export const CustomIcon = ({
19
19
 
20
20
  const cssRules: string[] = [];
21
21
  if (fill) {
22
- cssRules.push(`#${iconId} path { fill: ${fill} !important; }`);
22
+ cssRules.push(`#${iconId} path, #${iconId} rect { fill: ${fill} !important; }`);
23
23
  }
24
24
  if (stroke) {
25
25
  cssRules.push(`#${iconId} path { stroke: ${stroke} !important; }`);