@envive-ai/react-toolkit-v3 0.3.24 → 0.3.25

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 (230) 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/hooks/useGetCssVariablesOptions.cjs +1 -1
  6. package/dist/CSSVariablesEditor/hooks/useGetCssVariablesOptions.js +1 -1
  7. package/dist/CSSVariablesEditor/hooks/useGetCurrentMerchantColors.cjs +1 -1
  8. package/dist/CSSVariablesEditor/hooks/useGetCurrentMerchantColors.js +1 -1
  9. package/dist/CSSVariablesEditor/hooks/useGetDefaultCssVariables.cjs +4 -4
  10. package/dist/CSSVariablesEditor/hooks/useGetDefaultCssVariables.js +4 -4
  11. package/dist/CSSVariablesEditor/hooks/useHandleUpdateCssVars.cjs +3 -3
  12. package/dist/CSSVariablesEditor/hooks/useHandleUpdateCssVars.js +3 -3
  13. package/dist/Carousel/Carousel.d.cts +2 -2
  14. package/dist/Carousel/Carousel.d.ts +2 -2
  15. package/dist/Carousel/components/Badge.cjs +1 -1
  16. package/dist/Carousel/components/Badge.js +1 -1
  17. package/dist/Carousel/components/Container.cjs +1 -1
  18. package/dist/Carousel/components/Container.js +1 -1
  19. package/dist/ChatFooter/ChatFooter.cjs +1 -1
  20. package/dist/ChatFooter/ChatFooter.d.cts +2 -2
  21. package/dist/ChatFooter/ChatFooter.d.ts +2 -2
  22. package/dist/ChatFooter/ChatFooter.js +1 -1
  23. package/dist/ChatFooter/components/Layout.cjs +1 -1
  24. package/dist/ChatFooter/components/Layout.js +1 -1
  25. package/dist/ChatFooter/components/index.d.cts +5 -5
  26. package/dist/ChatFooter/components/index.d.ts +5 -5
  27. package/dist/ChatHeader/ChatHeader.d.cts +2 -2
  28. package/dist/ChatHeader/ChatHeader.d.ts +2 -2
  29. package/dist/ChatHeader/hooks/useGetHandleProperties.cjs +1 -1
  30. package/dist/ChatHeader/hooks/useGetHandleProperties.js +1 -1
  31. package/dist/ChatHeader/hooks/useGetLayoutProperties.cjs +1 -1
  32. package/dist/ChatHeader/hooks/useGetLayoutProperties.js +1 -1
  33. package/dist/ChatPreview/ChatPreview.d.cts +2 -2
  34. package/dist/ChatPreviewComparison/ChatPreviewComparison.d.cts +2 -2
  35. package/dist/ChatPreviewComparison/ChatPreviewComparison.d.ts +2 -2
  36. package/dist/ChatPreviewComparison/components/Layout.cjs +2 -2
  37. package/dist/ChatPreviewComparison/components/Layout.js +2 -2
  38. package/dist/ChatPreviewLoading/ChatPreviewLoading.d.cts +2 -2
  39. package/dist/Container/Container.d.cts +172 -172
  40. package/dist/Container/Container.d.ts +172 -172
  41. package/dist/DesignTokens/DesignTokensComponent.d.cts +2 -2
  42. package/dist/DesignTokens/DesignTokensComponent.d.ts +2 -2
  43. package/dist/DesignTokens/components/FontFamily.cjs +1 -1
  44. package/dist/DesignTokens/components/FontFamily.js +1 -1
  45. package/dist/DesignTokens/components/FontSize.cjs +1 -1
  46. package/dist/DesignTokens/components/FontSize.js +1 -1
  47. package/dist/DesignTokens/components/FontWeight.cjs +1 -1
  48. package/dist/DesignTokens/components/FontWeight.js +1 -1
  49. package/dist/DesignTokens/components/LetterSpacing.cjs +1 -1
  50. package/dist/DesignTokens/components/LetterSpacing.js +1 -1
  51. package/dist/DesignTokens/components/LineHeight.cjs +1 -1
  52. package/dist/DesignTokens/components/LineHeight.js +1 -1
  53. package/dist/DesignTokens/components/Typography.cjs +1 -1
  54. package/dist/DesignTokens/components/Typography.js +1 -1
  55. package/dist/Disclaimer/components/Container.cjs +1 -1
  56. package/dist/Disclaimer/components/Container.js +1 -1
  57. package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.cts +2 -2
  58. package/dist/DocumentRetrievalCard/DocumentRetrievalCard.d.ts +2 -2
  59. package/dist/DocumentRetrievalCard/components/Image.cjs +1 -1
  60. package/dist/DocumentRetrievalCard/components/Image.js +1 -1
  61. package/dist/DocumentRetrievalCard/components/Layout.cjs +1 -1
  62. package/dist/DocumentRetrievalCard/components/Layout.js +1 -1
  63. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.cjs +1 -1
  64. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Icon.js +1 -1
  65. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Label.cjs +1 -1
  66. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Label.js +1 -1
  67. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Layout.cjs +1 -1
  68. package/dist/DocumentRetrievalCard/components/ViewArticleButton/components/Layout.js +1 -1
  69. package/dist/FloatingButton/FloatingButton.d.cts +2 -2
  70. package/dist/FloatingButton/FloatingButton.d.ts +2 -2
  71. package/dist/FloatingButton/components/Button.cjs +1 -1
  72. package/dist/FloatingButton/components/Button.js +1 -1
  73. package/dist/FloatingButton/components/Container.cjs +1 -1
  74. package/dist/FloatingButton/components/Container.js +1 -1
  75. package/dist/FloatingButton/components/Wrapper.cjs +1 -1
  76. package/dist/FloatingButton/components/Wrapper.js +1 -1
  77. package/dist/FloatingChat/FloatingChat.d.cts +2 -2
  78. package/dist/FloatingChat/FloatingChat.d.ts +2 -2
  79. package/dist/FloatingChat/components/ChatMessages.cjs +1 -1
  80. package/dist/FloatingChat/components/ChatMessages.js +1 -1
  81. package/dist/FloatingChat/components/Layout.cjs +1 -1
  82. package/dist/FloatingChat/components/Layout.js +1 -1
  83. package/dist/FloatingChat/components/ProductResultsModal.cjs +1 -1
  84. package/dist/FloatingChat/components/ProductResultsModal.js +1 -1
  85. package/dist/FloatingChat/components/ResultsGridView.cjs +1 -1
  86. package/dist/FloatingChat/components/ResultsGridView.js +1 -1
  87. package/dist/FloatingChat/components/SalesAgentBadgeContent.cjs +1 -1
  88. package/dist/FloatingChat/components/SalesAgentBadgeContent.js +1 -1
  89. package/dist/Form/Form.cjs +1 -1
  90. package/dist/Form/Form.js +1 -1
  91. package/dist/Form/components/Layout.cjs +1 -1
  92. package/dist/Form/components/Layout.js +1 -1
  93. package/dist/Form/components/SubmitButtonItem.cjs +1 -1
  94. package/dist/Form/components/SubmitButtonItem.js +1 -1
  95. package/dist/Form/components/TextFieldItem.cjs +1 -1
  96. package/dist/Form/components/TextFieldItem.js +1 -1
  97. package/dist/FullPageSalesAgent/FullPageSalesAgent.d.cts +2 -2
  98. package/dist/FullPageSalesAgent/FullPageSalesAgent.d.ts +2 -2
  99. package/dist/FullPageSalesAgent/components/Layout.cjs +1 -1
  100. package/dist/FullPageSalesAgent/components/Layout.js +1 -1
  101. package/dist/Image/Image.cjs +1 -1
  102. package/dist/Image/Image.d.cts +2 -2
  103. package/dist/Image/Image.d.ts +2 -2
  104. package/dist/Image/Image.js +1 -1
  105. package/dist/ImageGallery/ImageGallery.d.cts +2 -2
  106. package/dist/ImageGallery/ImageGallery.d.ts +2 -2
  107. package/dist/ImageGallery/components/Layout.cjs +1 -1
  108. package/dist/ImageGallery/components/Layout.js +1 -1
  109. package/dist/ImageGallery/utils/functions.cjs +1 -1
  110. package/dist/ImageGallery/utils/functions.js +1 -1
  111. package/dist/MarkdownProcessor/MarkdownProcessor.d.cts +2 -2
  112. package/dist/MarkdownProcessor/MarkdownProcessor.d.ts +2 -2
  113. package/dist/Message/components/Layout.cjs +1 -1
  114. package/dist/Message/components/Layout.js +1 -1
  115. package/dist/OrderLookupCard/OrderLookupCard.cjs +1 -1
  116. package/dist/OrderLookupCard/OrderLookupCard.js +1 -1
  117. package/dist/OrderLookupCard/components/Layout.cjs +1 -1
  118. package/dist/OrderLookupCard/components/Layout.js +1 -1
  119. package/dist/OrderLookupCard/components/MoreProductsOverlay.cjs +1 -1
  120. package/dist/OrderLookupCard/components/MoreProductsOverlay.js +1 -1
  121. package/dist/OrderLookupCard/components/ProductImageGridItem.cjs +1 -1
  122. package/dist/OrderLookupCard/components/ProductImageGridItem.js +1 -1
  123. package/dist/OrderLookupCard/components/ProductImageItem.cjs +1 -1
  124. package/dist/OrderLookupCard/components/ProductImageItem.js +1 -1
  125. package/dist/OrderLookupCard/components/ProductImagesGrid.cjs +1 -1
  126. package/dist/OrderLookupCard/components/ProductImagesGrid.js +1 -1
  127. package/dist/OrderLookupCard/components/StatusLabel.cjs +1 -1
  128. package/dist/OrderLookupCard/components/StatusLabel.js +1 -1
  129. package/dist/OrderLookupCard/components/TrackOrderLink.cjs +1 -1
  130. package/dist/OrderLookupCard/components/TrackOrderLink.js +1 -1
  131. package/dist/ProductCard/ProductCard.cjs +1 -1
  132. package/dist/ProductCard/ProductCard.d.cts +2 -2
  133. package/dist/ProductCard/ProductCard.d.ts +2 -2
  134. package/dist/ProductCard/ProductCard.js +1 -1
  135. package/dist/PromptButton/PromptButton.cjs +1 -1
  136. package/dist/PromptButton/PromptButton.d.cts +2 -2
  137. package/dist/PromptButton/PromptButton.d.ts +2 -2
  138. package/dist/PromptButton/PromptButton.js +1 -1
  139. package/dist/PromptButton/components/Layout.cjs +1 -1
  140. package/dist/PromptButton/components/Layout.js +1 -1
  141. package/dist/PromptButton/components/Loading.cjs +1 -1
  142. package/dist/PromptButton/components/Loading.js +1 -1
  143. package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.cts +2 -2
  144. package/dist/PromptButtonCarouselWithImage/PromptButtonCarouselWithImage.d.ts +2 -2
  145. package/dist/PromptButtonCarouselWithImage/components/Layout.cjs +1 -1
  146. package/dist/PromptButtonCarouselWithImage/components/Layout.js +1 -1
  147. package/dist/PromptButtonCarouselWithImage/components/Skeleton.cjs +1 -1
  148. package/dist/PromptButtonCarouselWithImage/components/Skeleton.js +1 -1
  149. package/dist/PromptCarousel/PromptCarousel.cjs +1 -1
  150. package/dist/PromptCarousel/PromptCarousel.d.cts +2 -2
  151. package/dist/PromptCarousel/PromptCarousel.d.ts +2 -2
  152. package/dist/PromptCarousel/PromptCarousel.js +1 -1
  153. package/dist/ReviewCard/ReviewCard.d.cts +2 -2
  154. package/dist/ReviewCard/ReviewCard.d.ts +2 -2
  155. package/dist/ReviewCard/components/Container.cjs +1 -1
  156. package/dist/ReviewCard/components/Container.js +1 -1
  157. package/dist/ReviewCard/components/Rating.cjs +1 -1
  158. package/dist/ReviewCard/components/Rating.js +1 -1
  159. package/dist/ReviewCard/components/ReadMoreButton.cjs +1 -1
  160. package/dist/ReviewCard/components/ReadMoreButton.js +1 -1
  161. package/dist/ReviewCard/components/index.d.cts +6 -6
  162. package/dist/ReviewCard/components/index.d.ts +6 -6
  163. package/dist/SalesAgentProductCard/SalesAgentProductCard.d.cts +2 -2
  164. package/dist/SalesAgentProductCard/SalesAgentProductCard.d.ts +2 -2
  165. package/dist/SalesAgentProductCard/components/Container.cjs +1 -1
  166. package/dist/SalesAgentProductCard/components/Container.js +1 -1
  167. package/dist/SalesAgentProductCard/components/ProductImage.cjs +1 -1
  168. package/dist/SalesAgentProductCard/components/ProductImage.js +1 -1
  169. package/dist/SalesAgentProductCard/components/ProductName.cjs +1 -1
  170. package/dist/SalesAgentProductCard/components/ProductName.js +1 -1
  171. package/dist/SalesAgentProductCard/components/index.d.cts +8 -8
  172. package/dist/SalesAgentProductCard/components/index.d.ts +8 -8
  173. package/dist/SocialProof/SocialProof.d.cts +2 -2
  174. package/dist/SocialProof/SocialProof.d.ts +2 -2
  175. package/dist/SocialProof/components/Headline.cjs +8 -3
  176. package/dist/SocialProof/components/Headline.js +8 -3
  177. package/dist/SocialProof/components/LayoutFourHorizontal.cjs +1 -1
  178. package/dist/SocialProof/components/LayoutFourHorizontal.js +1 -1
  179. package/dist/SparkleAnimation/SparkleAnimation.d.cts +2 -2
  180. package/dist/SparkleAnimation/SparkleAnimation.d.ts +2 -2
  181. package/dist/Stack/Stack.d.ts +2 -2
  182. package/dist/TextField/TextField.cjs +1 -1
  183. package/dist/TextField/TextField.js +1 -1
  184. package/dist/TextField/components/Input.cjs +1 -1
  185. package/dist/TextField/components/Input.js +1 -1
  186. package/dist/TextField/components/Layout.cjs +1 -1
  187. package/dist/TextField/components/Layout.js +1 -1
  188. package/dist/TextField/components/SendIcon.cjs +1 -1
  189. package/dist/TextField/components/SendIcon.js +1 -1
  190. package/dist/TextField/hooks/useVoiceInput.cjs +3 -0
  191. package/dist/TextField/hooks/useVoiceInput.js +3 -0
  192. package/dist/Title/Title.cjs +1 -1
  193. package/dist/Title/Title.js +1 -1
  194. package/dist/Title/components/Layout.cjs +1 -1
  195. package/dist/Title/components/Layout.js +1 -1
  196. package/dist/TitledPromptCarousel/TitledPromptCarousel.cjs +1 -1
  197. package/dist/TitledPromptCarousel/TitledPromptCarousel.d.cts +2 -2
  198. package/dist/TitledPromptCarousel/TitledPromptCarousel.d.ts +2 -2
  199. package/dist/TitledPromptCarousel/TitledPromptCarousel.js +1 -1
  200. package/dist/Tokens/index.cjs +6 -6
  201. package/dist/Tokens/index.js +6 -6
  202. package/dist/TypingAnimation/TypingAnimation.d.cts +2 -2
  203. package/dist/TypingAnimation/TypingAnimation.d.ts +2 -2
  204. package/dist/Typography/Typography.d.cts +4 -4
  205. package/dist/Typography/Typography.d.ts +4 -4
  206. package/dist/WelcomeMessage/components/Container.cjs +1 -1
  207. package/dist/WelcomeMessage/components/Container.js +1 -1
  208. package/dist/WidgetTextField/WidgetTextField.cjs +2 -2
  209. package/dist/WidgetTextField/WidgetTextField.d.cts +2 -2
  210. package/dist/WidgetTextField/WidgetTextField.d.ts +2 -2
  211. package/dist/WidgetTextField/WidgetTextField.js +2 -2
  212. package/dist/WidgetTextField/components/Container.cjs +1 -1
  213. package/dist/WidgetTextField/components/Container.js +1 -1
  214. package/dist/WidgetTextField/components/Skeleton.cjs +1 -1
  215. package/dist/WidgetTextField/components/Skeleton.js +1 -1
  216. package/dist/WidgetWrapper/WidgetWrapper.cjs +1 -1
  217. package/dist/WidgetWrapper/WidgetWrapper.d.cts +2 -2
  218. package/dist/WidgetWrapper/WidgetWrapper.d.ts +2 -2
  219. package/dist/WidgetWrapper/WidgetWrapper.js +1 -1
  220. package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.cts +2 -2
  221. package/dist/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts +2 -2
  222. package/dist/packages/components-v3/tokens/typography/typography.cjs +1 -1
  223. package/dist/packages/components-v3/tokens/typography/typography.js +1 -1
  224. package/dist/utils/resolveTheme.cjs +1 -1
  225. package/dist/utils/resolveTheme.js +1 -1
  226. package/package.json +1 -1
  227. package/src/components/SocialProof/components/Headline.tsx +10 -2
  228. package/src/components/TextField/__tests__/VoiceInputButton.test.tsx +27 -16
  229. package/src/components/TextField/hooks/useVoiceInput.ts +12 -0
  230. package/src/components/WidgetTextField/WidgetTextField.tsx +3 -1
@@ -1,7 +1,7 @@
1
1
  import { Stack } from "../../Stack/Stack.js";
2
2
  import "../../Stack/index.js";
3
- import { jsx, jsxs } from "react/jsx-runtime";
4
3
  import classNames from "classnames";
4
+ import { jsx, jsxs } from "react/jsx-runtime";
5
5
 
6
6
  //#region src/components/Title/components/Layout.tsx
7
7
  const Layout = ({ logo, label, id, testId, className, style, ariaLabel }) => {
@@ -12,9 +12,9 @@ const require_PromptCarousel_types_types = require('../PromptCarousel/types/type
12
12
  const require_PromptCarousel = require('../PromptCarousel/PromptCarousel.cjs');
13
13
  require('../PromptCarousel/index.cjs');
14
14
  const require_useGetSkeletonProperties = require('../Image/hooks/useGetSkeletonProperties.cjs');
15
- let react_jsx_runtime = require("react/jsx-runtime");
16
15
  let classnames = require("classnames");
17
16
  classnames = require_rolldown_runtime.__toESM(classnames);
17
+ let react_jsx_runtime = require("react/jsx-runtime");
18
18
 
19
19
  //#region src/components/TitledPromptCarousel/TitledPromptCarousel.tsx
20
20
  const TitledPromptCarousel = ({ id, titleLabel, titleAriaLabel, theme = require_theme.Theme.GLOBAL_CUSTOM, isLoading = false, boldFirstButton = false, promptButtonType = require_PromptButton_types_index.PromptButtonVariant.LIGHT, promptCarouselRows = require_PromptCarousel_types_types.PromptCarouselRows.ALWAYS_ONE, animationSpeed = require_PromptCarousel_types_types.AnimationSpeed.NONE, handleButtonClick, handleButtonDrag, handleButtonHover, handleButtonMouseDown, handleButtonMouseUp, handleButtonTouchStart, handleButtonTouchEnd, promptButtonTexts, promptCarouselAriaLabel }) => {
@@ -1,5 +1,5 @@
1
1
  import { TitledPromptCarouselProps } from "./types/index.cjs";
2
- import * as react_jsx_runtime1 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime15 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/TitledPromptCarousel/TitledPromptCarousel.d.ts
5
5
  declare const TitledPromptCarousel: ({
@@ -21,6 +21,6 @@ declare const TitledPromptCarousel: ({
21
21
  handleButtonTouchEnd,
22
22
  promptButtonTexts,
23
23
  promptCarouselAriaLabel
24
- }: TitledPromptCarouselProps) => react_jsx_runtime1.JSX.Element;
24
+ }: TitledPromptCarouselProps) => react_jsx_runtime15.JSX.Element;
25
25
  //#endregion
26
26
  export { TitledPromptCarousel };
@@ -1,5 +1,5 @@
1
1
  import { TitledPromptCarouselProps } from "./types/index.js";
2
- import * as react_jsx_runtime9 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime5 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/TitledPromptCarousel/TitledPromptCarousel.d.ts
5
5
  declare const TitledPromptCarousel: ({
@@ -21,6 +21,6 @@ declare const TitledPromptCarousel: ({
21
21
  handleButtonTouchEnd,
22
22
  promptButtonTexts,
23
23
  promptCarouselAriaLabel
24
- }: TitledPromptCarouselProps) => react_jsx_runtime9.JSX.Element;
24
+ }: TitledPromptCarouselProps) => react_jsx_runtime5.JSX.Element;
25
25
  //#endregion
26
26
  export { TitledPromptCarousel };
@@ -11,8 +11,8 @@ import { AnimationSpeed, PromptCarouselRows } from "../PromptCarousel/types/type
11
11
  import { PromptCarousel } from "../PromptCarousel/PromptCarousel.js";
12
12
  import "../PromptCarousel/index.js";
13
13
  import { useGetSkeletonProperties } from "../Image/hooks/useGetSkeletonProperties.js";
14
- import { jsx, jsxs } from "react/jsx-runtime";
15
14
  import classNames from "classnames";
15
+ import { jsx, jsxs } from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/TitledPromptCarousel/TitledPromptCarousel.tsx
18
18
  const TitledPromptCarousel = ({ id, titleLabel, titleAriaLabel, theme = Theme.GLOBAL_CUSTOM, isLoading = false, boldFirstButton = false, promptButtonType = PromptButtonVariant.LIGHT, promptCarouselRows = PromptCarouselRows.ALWAYS_ONE, animationSpeed = AnimationSpeed.NONE, handleButtonClick, handleButtonDrag, handleButtonHover, handleButtonMouseDown, handleButtonMouseUp, handleButtonTouchStart, handleButtonTouchEnd, promptButtonTexts, promptCarouselAriaLabel }) => {
@@ -1,16 +1,16 @@
1
- const require_colors = require('../packages/components-v3/tokens/colors/colors.cjs');
1
+ const require_theme = require('../packages/components-v3/tokens/theme/theme.cjs');
2
+ const require_breakpoints = require('../packages/components-v3/tokens/breakpoints/breakpoints.cjs');
3
+ const require_fontFamily = require('../packages/components-v3/tokens/typography/fontFamily.cjs');
2
4
  const require_fontSize = require('../packages/components-v3/tokens/typography/fontSize.cjs');
3
5
  const require_fontWeight = require('../packages/components-v3/tokens/typography/fontWeight.cjs');
4
6
  const require_lineHeight = require('../packages/components-v3/tokens/typography/lineHeight.cjs');
5
7
  const require_letterSpacing = require('../packages/components-v3/tokens/typography/letterSpacing.cjs');
6
- const require_fontFamily = require('../packages/components-v3/tokens/typography/fontFamily.cjs');
7
- const require_radius = require('../packages/components-v3/tokens/radius/radius.cjs');
8
- const require_aspectRatio = require('../packages/components-v3/tokens/aspectRatio/aspectRatio.cjs');
9
- const require_theme = require('../packages/components-v3/tokens/theme/theme.cjs');
10
- const require_breakpoints = require('../packages/components-v3/tokens/breakpoints/breakpoints.cjs');
11
8
  const require_typography = require('../packages/components-v3/tokens/typography/typography.cjs');
9
+ const require_radius = require('../packages/components-v3/tokens/radius/radius.cjs');
12
10
  const require_spacing = require('../packages/components-v3/tokens/spacing/spacing.cjs');
11
+ const require_colors = require('../packages/components-v3/tokens/colors/colors.cjs');
13
12
  const require_motion = require('../packages/components-v3/tokens/montion/motion.cjs');
13
+ const require_aspectRatio = require('../packages/components-v3/tokens/aspectRatio/aspectRatio.cjs');
14
14
 
15
15
  exports.FontFamily = require_fontFamily.FontFamily;
16
16
  exports.Theme = require_theme.Theme;
@@ -1,15 +1,15 @@
1
- import { colorsVariables } from "../packages/components-v3/tokens/colors/colors.js";
1
+ import { Theme } from "../packages/components-v3/tokens/theme/theme.js";
2
+ import { screensBreakpointsVariables, tailwindScreens } from "../packages/components-v3/tokens/breakpoints/breakpoints.js";
3
+ import { FontFamily, fontFamilyVariables } from "../packages/components-v3/tokens/typography/fontFamily.js";
2
4
  import { fontSizeVariables } from "../packages/components-v3/tokens/typography/fontSize.js";
3
5
  import { fontWeightVariables } from "../packages/components-v3/tokens/typography/fontWeight.js";
4
6
  import { lineHeightVariables } from "../packages/components-v3/tokens/typography/lineHeight.js";
5
7
  import { letterSpacingVariables } from "../packages/components-v3/tokens/typography/letterSpacing.js";
6
- import { FontFamily, fontFamilyVariables } from "../packages/components-v3/tokens/typography/fontFamily.js";
7
- import { borderRadiusVariables } from "../packages/components-v3/tokens/radius/radius.js";
8
- import { aspectRatioVariables } from "../packages/components-v3/tokens/aspectRatio/aspectRatio.js";
9
- import { Theme } from "../packages/components-v3/tokens/theme/theme.js";
10
- import { screensBreakpointsVariables, tailwindScreens } from "../packages/components-v3/tokens/breakpoints/breakpoints.js";
11
8
  import { createTypographyComponents } from "../packages/components-v3/tokens/typography/typography.js";
9
+ import { borderRadiusVariables } from "../packages/components-v3/tokens/radius/radius.js";
12
10
  import { spacingVariables } from "../packages/components-v3/tokens/spacing/spacing.js";
11
+ import { colorsVariables } from "../packages/components-v3/tokens/colors/colors.js";
13
12
  import { animationsVariables, keyFramesVariables } from "../packages/components-v3/tokens/montion/motion.js";
13
+ import { aspectRatioVariables } from "../packages/components-v3/tokens/aspectRatio/aspectRatio.js";
14
14
 
15
15
  export { FontFamily, Theme, animationsVariables, aspectRatioVariables, borderRadiusVariables, colorsVariables, createTypographyComponents, fontFamilyVariables, fontSizeVariables, fontWeightVariables, keyFramesVariables, letterSpacingVariables, lineHeightVariables, screensBreakpointsVariables, spacingVariables, tailwindScreens };
@@ -1,5 +1,5 @@
1
1
  import { TypingAnimationProps } from "./types/index.cjs";
2
- import * as react_jsx_runtime7 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime6 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/TypingAnimation/TypingAnimation.d.ts
5
5
  declare const TypingAnimation: ({
@@ -7,6 +7,6 @@ declare const TypingAnimation: ({
7
7
  widgetContentProps,
8
8
  widgetStyleProps,
9
9
  widgetEventProps
10
- }: TypingAnimationProps) => react_jsx_runtime7.JSX.Element;
10
+ }: TypingAnimationProps) => react_jsx_runtime6.JSX.Element;
11
11
  //#endregion
12
12
  export { TypingAnimation };
@@ -1,5 +1,5 @@
1
1
  import { TypingAnimationProps } from "./types/index.js";
2
- import * as react_jsx_runtime0 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime3 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/TypingAnimation/TypingAnimation.d.ts
5
5
  declare const TypingAnimation: ({
@@ -7,6 +7,6 @@ declare const TypingAnimation: ({
7
7
  widgetContentProps,
8
8
  widgetStyleProps,
9
9
  widgetEventProps
10
- }: TypingAnimationProps) => react_jsx_runtime0.JSX.Element;
10
+ }: TypingAnimationProps) => react_jsx_runtime3.JSX.Element;
11
11
  //#endregion
12
12
  export { TypingAnimation };
@@ -1,5 +1,5 @@
1
1
  import { TypographyProps } from "./types/index.cjs";
2
- import * as react4 from "react";
2
+ import * as react0 from "react";
3
3
 
4
4
  //#region src/components/Typography/Typography.d.ts
5
5
  /**
@@ -18,13 +18,13 @@ declare const Typography: ({
18
18
  noWrap,
19
19
  as,
20
20
  "aria-label": ariaLabel
21
- }: TypographyProps) => react4.DetailedReactHTMLElement<{
21
+ }: TypographyProps) => react0.DetailedReactHTMLElement<{
22
22
  'aria-label': string;
23
23
  'aria-level'?: number;
24
- role?: react4.AriaRole;
24
+ role?: react0.AriaRole;
25
25
  title?: string;
26
26
  className: string;
27
- style: react4.CSSProperties;
27
+ style: react0.CSSProperties;
28
28
  id: string;
29
29
  'data-testid': string;
30
30
  }, HTMLElement>;
@@ -1,5 +1,5 @@
1
1
  import { TypographyProps } from "./types/index.js";
2
- import * as react2 from "react";
2
+ import * as react0 from "react";
3
3
 
4
4
  //#region src/components/Typography/Typography.d.ts
5
5
  /**
@@ -18,13 +18,13 @@ declare const Typography: ({
18
18
  noWrap,
19
19
  as,
20
20
  "aria-label": ariaLabel
21
- }: TypographyProps) => react2.DetailedReactHTMLElement<{
21
+ }: TypographyProps) => react0.DetailedReactHTMLElement<{
22
22
  'aria-label': string;
23
23
  'aria-level'?: number;
24
- role?: react2.AriaRole;
24
+ role?: react0.AriaRole;
25
25
  title?: string;
26
26
  className: string;
27
- style: react2.CSSProperties;
27
+ style: react0.CSSProperties;
28
28
  id: string;
29
29
  'data-testid': string;
30
30
  }, HTMLElement>;
@@ -4,9 +4,9 @@ require('../../Stack/index.cjs');
4
4
  const require_Container = require('../../Container/Container.cjs');
5
5
  require('../../Container/index.cjs');
6
6
  const require_useGetContainerProperties = require('../hooks/useGetContainerProperties.cjs');
7
- let react_jsx_runtime = require("react/jsx-runtime");
8
7
  let classnames = require("classnames");
9
8
  classnames = require_rolldown_runtime.__toESM(classnames);
9
+ let react_jsx_runtime = require("react/jsx-runtime");
10
10
 
11
11
  //#region src/components/WelcomeMessage/components/Container.tsx
12
12
  const Container$1 = ({ sparkleIcon, titleNode, textNode, theme, id, testId, className, style }) => {
@@ -3,8 +3,8 @@ import "../../Stack/index.js";
3
3
  import { Container } from "../../Container/Container.js";
4
4
  import "../../Container/index.js";
5
5
  import { useGetContainerProperties } from "../hooks/useGetContainerProperties.js";
6
- import { jsx, jsxs } from "react/jsx-runtime";
7
6
  import classNames from "classnames";
7
+ import { jsx, jsxs } from "react/jsx-runtime";
8
8
 
9
9
  //#region src/components/WelcomeMessage/components/Container.tsx
10
10
  const Container$1 = ({ sparkleIcon, titleNode, textNode, theme, id, testId, className, style }) => {
@@ -9,9 +9,9 @@ const require_useVoiceInput = require('../TextField/hooks/useVoiceInput.cjs');
9
9
  const require_types = require('./types/types.cjs');
10
10
  const require_index$2 = require('./components/index.cjs');
11
11
  const require_useGetMicWidgetButtonProperties = require('./hooks/useGetMicWidgetButtonProperties.cjs');
12
- let react_jsx_runtime = require("react/jsx-runtime");
13
12
  let classnames = require("classnames");
14
13
  classnames = require_rolldown_runtime.__toESM(classnames);
14
+ let react_jsx_runtime = require("react/jsx-runtime");
15
15
  let __envive_ai_react_hooks_atoms_chat = require("@envive-ai/react-hooks/atoms/chat");
16
16
 
17
17
  //#region src/components/WidgetTextField/WidgetTextField.tsx
@@ -19,7 +19,7 @@ const WidgetTextField = ({ id, testId, style, className, voiceInputClassName, th
19
19
  const resolvedTheme = require_resolveTheme.resolveTheme(theme);
20
20
  const setListeningToSpeech = require_react.useSetAtom(__envive_ai_react_hooks_atoms_chat.listeningToSpeechAtom);
21
21
  const { skeletonClass } = require_useGetSkeletonProperties.useGetSkeletonProperties(isLoading);
22
- const { browserSupportsSpeechRecognition } = require_useVoiceInput.useVoiceInput({});
22
+ const { browserSupportsSpeechRecognition } = require_useVoiceInput.useVoiceInput({ disabled: true });
23
23
  const { micWidgetButtonClasses } = require_useGetMicWidgetButtonProperties.useGetMicWidgetButtonProperties({
24
24
  theme: resolvedTheme,
25
25
  isListening: false
@@ -1,5 +1,5 @@
1
1
  import { WidgetTextFieldProps } from "./types/types.cjs";
2
- import * as react_jsx_runtime14 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime16 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/WidgetTextField/WidgetTextField.d.ts
5
5
  declare const WidgetTextField: ({
@@ -19,6 +19,6 @@ declare const WidgetTextField: ({
19
19
  onClick,
20
20
  enableVoiceInput,
21
21
  onTranscriptionStarted
22
- }: WidgetTextFieldProps) => react_jsx_runtime14.JSX.Element;
22
+ }: WidgetTextFieldProps) => react_jsx_runtime16.JSX.Element;
23
23
  //#endregion
24
24
  export { WidgetTextField };
@@ -1,5 +1,5 @@
1
1
  import { WidgetTextFieldProps } from "./types/types.js";
2
- import * as react_jsx_runtime36 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/WidgetTextField/WidgetTextField.d.ts
5
5
  declare const WidgetTextField: ({
@@ -19,6 +19,6 @@ declare const WidgetTextField: ({
19
19
  onClick,
20
20
  enableVoiceInput,
21
21
  onTranscriptionStarted
22
- }: WidgetTextFieldProps) => react_jsx_runtime36.JSX.Element;
22
+ }: WidgetTextFieldProps) => react_jsx_runtime0.JSX.Element;
23
23
  //#endregion
24
24
  export { WidgetTextField };
@@ -8,8 +8,8 @@ import { useVoiceInput } from "../TextField/hooks/useVoiceInput.js";
8
8
  import { IconVariant } from "./types/types.js";
9
9
  import { WidgetTextFieldComponents } from "./components/index.js";
10
10
  import { useGetMicWidgetButtonProperties } from "./hooks/useGetMicWidgetButtonProperties.js";
11
- import { jsx } from "react/jsx-runtime";
12
11
  import classNames from "classnames";
12
+ import { jsx } from "react/jsx-runtime";
13
13
  import { listeningToSpeechAtom } from "@envive-ai/react-hooks/atoms/chat";
14
14
 
15
15
  //#region src/components/WidgetTextField/WidgetTextField.tsx
@@ -17,7 +17,7 @@ const WidgetTextField = ({ id, testId, style, className, voiceInputClassName, th
17
17
  const resolvedTheme = resolveTheme(theme);
18
18
  const setListeningToSpeech = useSetAtom(listeningToSpeechAtom);
19
19
  const { skeletonClass } = useGetSkeletonProperties(isLoading);
20
- const { browserSupportsSpeechRecognition } = useVoiceInput({});
20
+ const { browserSupportsSpeechRecognition } = useVoiceInput({ disabled: true });
21
21
  const { micWidgetButtonClasses } = useGetMicWidgetButtonProperties({
22
22
  theme: resolvedTheme,
23
23
  isListening: false
@@ -5,9 +5,9 @@ const require_Container = require('../../Container/Container.cjs');
5
5
  require('../../Container/index.cjs');
6
6
  const require_useGetContainerProperties = require('../hooks/useGetContainerProperties.cjs');
7
7
  const require_useHandleKeyboard = require('../hooks/useHandleKeyboard.cjs');
8
- let react_jsx_runtime = require("react/jsx-runtime");
9
8
  let classnames = require("classnames");
10
9
  classnames = require_rolldown_runtime.__toESM(classnames);
10
+ let react_jsx_runtime = require("react/jsx-runtime");
11
11
 
12
12
  //#region src/components/WidgetTextField/components/Container.tsx
13
13
  const Container$1 = ({ id, testId, style, className, theme, minimalFrame, ariaLabel, icon, text, voiceInputButton, disabled, onClick }) => {
@@ -4,8 +4,8 @@ import { Container } from "../../Container/Container.js";
4
4
  import "../../Container/index.js";
5
5
  import { useGetContainerProperties } from "../hooks/useGetContainerProperties.js";
6
6
  import { useHandleKeyboard } from "../hooks/useHandleKeyboard.js";
7
- import { jsx, jsxs } from "react/jsx-runtime";
8
7
  import classNames from "classnames";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
9
 
10
10
  //#region src/components/WidgetTextField/components/Container.tsx
11
11
  const Container$1 = ({ id, testId, style, className, theme, minimalFrame, ariaLabel, icon, text, voiceInputButton, disabled, onClick }) => {
@@ -2,9 +2,9 @@ const require_rolldown_runtime = require('../../_virtual/rolldown_runtime.cjs');
2
2
  const require_theme = require('../../packages/components-v3/tokens/theme/theme.cjs');
3
3
  const require_resolveTheme = require('../../utils/resolveTheme.cjs');
4
4
  let react = require("react");
5
- let react_jsx_runtime = require("react/jsx-runtime");
6
5
  let classnames = require("classnames");
7
6
  classnames = require_rolldown_runtime.__toESM(classnames);
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
8
 
9
9
  //#region src/components/WidgetTextField/components/Skeleton.tsx
10
10
  const Skeleton = ({ theme = require_theme.Theme.GLOBAL_CUSTOM }) => {
@@ -1,8 +1,8 @@
1
1
  import { Theme } from "../../packages/components-v3/tokens/theme/theme.js";
2
2
  import { resolveTheme } from "../../utils/resolveTheme.js";
3
3
  import { useMemo } from "react";
4
- import { jsx } from "react/jsx-runtime";
5
4
  import classNames from "classnames";
5
+ import { jsx } from "react/jsx-runtime";
6
6
 
7
7
  //#region src/components/WidgetTextField/components/Skeleton.tsx
8
8
  const Skeleton = ({ theme = Theme.GLOBAL_CUSTOM }) => {
@@ -2,9 +2,9 @@ const require_rolldown_runtime = require('../_virtual/rolldown_runtime.cjs');
2
2
  const require_Container = require('../Container/Container.cjs');
3
3
  require('../Container/index.cjs');
4
4
  const require_useGetWrapperProperties = require('./hooks/useGetWrapperProperties.cjs');
5
- let react_jsx_runtime = require("react/jsx-runtime");
6
5
  let classnames = require("classnames");
7
6
  classnames = require_rolldown_runtime.__toESM(classnames);
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
8
 
9
9
  //#region src/components/WidgetWrapper/WidgetWrapper.tsx
10
10
  /**
@@ -1,5 +1,5 @@
1
1
  import { WidgetWrapperProps } from "./types/types.cjs";
2
- import * as react_jsx_runtime0 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime8 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/WidgetWrapper/WidgetWrapper.d.ts
5
5
 
@@ -16,6 +16,6 @@ declare const WidgetWrapper: ({
16
16
  className,
17
17
  style,
18
18
  ...containerProps
19
- }: WidgetWrapperProps) => react_jsx_runtime0.JSX.Element;
19
+ }: WidgetWrapperProps) => react_jsx_runtime8.JSX.Element;
20
20
  //#endregion
21
21
  export { WidgetWrapper };
@@ -1,5 +1,5 @@
1
1
  import { WidgetWrapperProps } from "./types/types.js";
2
- import * as react_jsx_runtime8 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime1 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/WidgetWrapper/WidgetWrapper.d.ts
5
5
 
@@ -16,6 +16,6 @@ declare const WidgetWrapper: ({
16
16
  className,
17
17
  style,
18
18
  ...containerProps
19
- }: WidgetWrapperProps) => react_jsx_runtime8.JSX.Element;
19
+ }: WidgetWrapperProps) => react_jsx_runtime1.JSX.Element;
20
20
  //#endregion
21
21
  export { WidgetWrapper };
@@ -1,8 +1,8 @@
1
1
  import { Container } from "../Container/Container.js";
2
2
  import "../Container/index.js";
3
3
  import { useGetWrapperProperties } from "./hooks/useGetWrapperProperties.js";
4
- import { jsx } from "react/jsx-runtime";
5
4
  import classNames from "classnames";
5
+ import { jsx } from "react/jsx-runtime";
6
6
 
7
7
  //#region src/components/WidgetWrapper/WidgetWrapper.tsx
8
8
  /**
@@ -1,5 +1,5 @@
1
1
  import { WidgetWrapperWithTitleProps } from "./types/types.cjs";
2
- import * as react_jsx_runtime36 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime10 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts
5
5
  declare const WidgetWrapperWithTitle: ({
@@ -14,6 +14,6 @@ declare const WidgetWrapperWithTitle: ({
14
14
  hexCardColor,
15
15
  hideLogo,
16
16
  fullIsLoading
17
- }: WidgetWrapperWithTitleProps) => react_jsx_runtime36.JSX.Element;
17
+ }: WidgetWrapperWithTitleProps) => react_jsx_runtime10.JSX.Element;
18
18
  //#endregion
19
19
  export { WidgetWrapperWithTitle };
@@ -1,5 +1,5 @@
1
1
  import { WidgetWrapperWithTitleProps } from "./types/types.js";
2
- import * as react_jsx_runtime7 from "react/jsx-runtime";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
3
 
4
4
  //#region src/components/WidgetWrapperWithTitle/WidgetWrapperWithTitle.d.ts
5
5
  declare const WidgetWrapperWithTitle: ({
@@ -14,6 +14,6 @@ declare const WidgetWrapperWithTitle: ({
14
14
  hexCardColor,
15
15
  hideLogo,
16
16
  fullIsLoading
17
- }: WidgetWrapperWithTitleProps) => react_jsx_runtime7.JSX.Element;
17
+ }: WidgetWrapperWithTitleProps) => react_jsx_runtime0.JSX.Element;
18
18
  //#endregion
19
19
  export { WidgetWrapperWithTitle };
@@ -1,8 +1,8 @@
1
+ require('./fontFamily.cjs');
1
2
  require('./fontSize.cjs');
2
3
  require('./fontWeight.cjs');
3
4
  require('./lineHeight.cjs');
4
5
  require('./letterSpacing.cjs');
5
- require('./fontFamily.cjs');
6
6
 
7
7
  //#region tokens/typography/typography.ts
8
8
  const createTypographyComponents = ({ addComponents, theme }) => {
@@ -1,8 +1,8 @@
1
+ import "./fontFamily.js";
1
2
  import "./fontSize.js";
2
3
  import "./fontWeight.js";
3
4
  import "./lineHeight.js";
4
5
  import "./letterSpacing.js";
5
- import "./fontFamily.js";
6
6
 
7
7
  //#region tokens/typography/typography.ts
8
8
  const createTypographyComponents = ({ addComponents, theme }) => {
@@ -1,5 +1,5 @@
1
- const require_utils = require('../DesignTokens/components/utils.cjs');
2
1
  const require_theme = require('../packages/components-v3/tokens/theme/theme.cjs');
2
+ const require_utils = require('../DesignTokens/components/utils.cjs');
3
3
 
4
4
  //#region src/components/utils/resolveTheme.ts
5
5
  const resolveTheme = (theme) => {
@@ -1,5 +1,5 @@
1
- import { getComputedCSSVariable } from "../DesignTokens/components/utils.js";
2
1
  import { Theme, ThemeCSSVar } from "../packages/components-v3/tokens/theme/theme.js";
2
+ import { getComputedCSSVariable } from "../DesignTokens/components/utils.js";
3
3
 
4
4
  //#region src/components/utils/resolveTheme.ts
5
5
  const resolveTheme = (theme) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@envive-ai/react-toolkit-v3",
3
- "version": "0.3.24",
3
+ "version": "0.3.25",
4
4
  "description": "React component library for Envive services.",
5
5
  "keywords": [
6
6
  "react",
@@ -19,6 +19,13 @@ export type HeadlineProps = {
19
19
  handleButtonHover?: (text: string) => void;
20
20
  };
21
21
 
22
+ const resolveVariant = (theme: Theme): TypographyVariant => {
23
+ if ([Theme.MINIMAL, Theme.MODERN].includes(theme)) {
24
+ return TypographyVariant.B2_MD;
25
+ }
26
+ return TypographyVariant.B1_MD;
27
+ };
28
+
22
29
  export const Headline = forwardRef<HTMLDivElement, HeadlineProps>(
23
30
  (
24
31
  {
@@ -35,6 +42,7 @@ export const Headline = forwardRef<HTMLDivElement, HeadlineProps>(
35
42
  ref,
36
43
  ) => {
37
44
  const finalTheme = resolveTheme(theme);
45
+ const variant = resolveVariant(finalTheme);
38
46
 
39
47
  return (
40
48
  <Stack
@@ -45,14 +53,14 @@ export const Headline = forwardRef<HTMLDivElement, HeadlineProps>(
45
53
  <Stack gap="2">
46
54
  <Container>
47
55
  <Typography
48
- variant={TypographyVariant.B1_MD}
56
+ variant={variant}
49
57
  color={TypographyColor.TEXT_ACCENT}
50
58
  >
51
59
  {socialProofCounter}
52
60
  </Typography>
53
61
  &nbsp;
54
62
  <Typography
55
- variant={TypographyVariant.B1_MD}
63
+ variant={variant}
56
64
  color={TypographyColor.TEXT_PRIMARY}
57
65
  >
58
66
  {socialProofHeadline}
@@ -15,34 +15,45 @@ import { useVoiceInput } from '../hooks/useVoiceInput';
15
15
  * function references to be available at module evaluation time.
16
16
  */
17
17
  const spies = vi.hoisted(() => ({
18
- // Mock functions for SpeechRecognition API methods
19
18
  mockStartListening: vi.fn(() => Promise.resolve()),
20
19
  mockStopListening: vi.fn(() => Promise.resolve()),
21
20
  mockAbortListening: vi.fn(() => Promise.resolve()),
22
- // Mock for the resetTranscript function from useSpeechRecognition
23
21
  mockResetTranscript: vi.fn(),
22
+ mockSetListeningToSpeech: vi.fn(),
23
+ }));
24
+
25
+ const speechRecognitionMock = vi.hoisted(() => ({
26
+ transcript: '',
27
+ browserSupportsSpeechRecognition: true,
28
+ isMicrophoneAvailable: true,
29
+ resetTranscript: spies.mockResetTranscript,
24
30
  }));
25
31
 
26
- /**
27
- * Mock the react-speech-recognition module to control its behavior in tests.
28
- * This allows us to:
29
- * - Control whether the browser supports speech recognition
30
- * - Control what transcript value is returned
31
- * - Verify that SpeechRecognition methods are called correctly
32
- */
33
32
  vi.mock('react-speech-recognition', () => ({
34
- // The default export contains the static methods like startListening, stopListening, abortListening
35
33
  default: {
36
34
  startListening: spies.mockStartListening,
37
35
  stopListening: spies.mockStopListening,
38
36
  abortListening: spies.mockAbortListening,
39
37
  },
40
- // useSpeechRecognition hook provides transcript state and resetTranscript function
41
- useSpeechRecognition: vi.fn(() => ({
42
- transcript: '',
43
- browserSupportsSpeechRecognition: true,
44
- resetTranscript: spies.mockResetTranscript,
45
- })),
38
+ useSpeechRecognition: () => speechRecognitionMock,
39
+ }));
40
+
41
+ vi.mock('@envive-ai/react-hooks/atoms/chat', () => ({
42
+ listeningToSpeechAtom: Symbol.for('listeningToSpeechAtom'),
43
+ }));
44
+
45
+ let sharedState = '';
46
+ const stableSetter = (value: string) => {
47
+ sharedState = value;
48
+ spies.mockSetListeningToSpeech(value);
49
+ };
50
+
51
+ const stableGetter = () => sharedState;
52
+ const stableAtomResult = [stableGetter, stableSetter];
53
+
54
+ vi.mock('jotai', () => ({
55
+ useAtom: () => stableAtomResult,
56
+ useSetAtom: () => stableSetter,
46
57
  }));
47
58
 
48
59
  describe('useVoiceInput', () => {
@@ -26,6 +26,10 @@ export const useVoiceInput = ({
26
26
  useSpeechRecognition();
27
27
 
28
28
  const handleStartListening = async () => {
29
+ if (disabled) {
30
+ return;
31
+ }
32
+
29
33
  try {
30
34
  resetTranscript();
31
35
  await SpeechRecognition.startListening({ continuous: true, language: 'en-US' });
@@ -37,11 +41,19 @@ export const useVoiceInput = ({
37
41
  };
38
42
 
39
43
  const handleStopListening = async () => {
44
+ if (disabled) {
45
+ return;
46
+ }
47
+
40
48
  await SpeechRecognition.stopListening();
41
49
  onTranscriptionCompleted?.(transcript);
42
50
  };
43
51
 
44
52
  const handleAbortListening = async () => {
53
+ if (disabled) {
54
+ return;
55
+ }
56
+
45
57
  await SpeechRecognition.abortListening();
46
58
  resetTranscript();
47
59
  };
@@ -33,7 +33,9 @@ export const WidgetTextField = ({
33
33
  const setListeningToSpeech = useSetAtom(listeningToSpeechAtom);
34
34
  const { skeletonClass } = useGetSkeletonProperties(isLoading);
35
35
 
36
- const { browserSupportsSpeechRecognition } = useVoiceInput({});
36
+ const { browserSupportsSpeechRecognition } = useVoiceInput({
37
+ disabled: true,
38
+ });
37
39
 
38
40
  const { micWidgetButtonClasses } = useGetMicWidgetButtonProperties({
39
41
  theme: resolvedTheme,