@athoscommerce/snap-preact 1.10.0 → 1.10.1-beta.150

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 (354) hide show
  1. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +99 -0
  2. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +17 -0
  3. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +56 -11
  4. package/dist/cjs/components/src/components/Atoms/Icon/paths.js +13 -0
  5. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +221 -0
  6. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.js +17 -0
  7. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +209 -0
  8. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +17 -0
  9. package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +258 -0
  10. package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.js +17 -0
  11. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +282 -0
  12. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.js +17 -0
  13. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +173 -0
  14. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +17 -0
  15. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +577 -0
  16. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.js +17 -0
  17. package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.js +252 -0
  18. package/dist/cjs/components/src/components/Molecules/ChatResult/index.js +17 -0
  19. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +113 -0
  20. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.js +17 -0
  21. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +107 -0
  22. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.js +17 -0
  23. package/dist/cjs/components/src/components/Molecules/Result/Result.js +53 -6
  24. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +28 -2
  25. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +24 -28
  26. package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.js +5 -1
  27. package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +621 -0
  28. package/dist/cjs/components/src/components/Organisms/Chat/Chat.lang.js +105 -0
  29. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatAttachments.js +104 -0
  30. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +161 -0
  31. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComposer.js +166 -0
  32. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +369 -0
  33. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatHistory.js +130 -0
  34. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatMessages.js +218 -0
  35. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +123 -0
  36. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSideChat.js +173 -0
  37. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +149 -0
  38. package/dist/cjs/components/src/components/Organisms/Chat/components/chatAccentTheme.js +60 -0
  39. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +66 -0
  40. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.js +96 -0
  41. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +113 -0
  42. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +135 -0
  43. package/dist/cjs/components/src/components/Organisms/Chat/index.js +18 -0
  44. package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.js +94 -0
  45. package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.lang.js +11 -0
  46. package/dist/cjs/components/src/components/Organisms/ChatButton/index.js +18 -0
  47. package/dist/cjs/components/src/components/Organisms/Facet/Facet.js +1 -5
  48. package/dist/cjs/components/src/components/Organisms/Results/Results.js +1 -1
  49. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +5 -0
  50. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +5 -0
  51. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +5 -0
  52. package/dist/cjs/components/src/components/Templates/Chat/Chat.js +47 -0
  53. package/dist/cjs/components/src/components/Templates/Chat/index.js +17 -0
  54. package/dist/cjs/components/src/components/Templates/ChatButton/ChatButton.js +47 -0
  55. package/dist/cjs/components/src/components/Templates/ChatButton/index.js +17 -0
  56. package/dist/cjs/components/src/index.js +17 -1
  57. package/dist/cjs/components/src/providers/themeComponents.js +20 -0
  58. package/dist/cjs/components/src/setupTests.js +14 -0
  59. package/dist/cjs/components/src/themes/base/components/templates/chat.js +6 -0
  60. package/dist/cjs/components/src/themes/base/components/templates/chatButton.js +6 -0
  61. package/dist/cjs/components/src/themes/base/components/templates/index.js +10 -0
  62. package/dist/cjs/components/src/themes/bocachica/components/templates/chat.js +6 -0
  63. package/dist/cjs/components/src/themes/bocachica/components/templates/chatButton.js +6 -0
  64. package/dist/cjs/components/src/themes/bocachica/components/templates/index.js +10 -0
  65. package/dist/cjs/components/src/themes/pike/components/templates/chat.js +6 -0
  66. package/dist/cjs/components/src/themes/pike/components/templates/chatButton.js +6 -0
  67. package/dist/cjs/components/src/themes/pike/components/templates/index.js +10 -0
  68. package/dist/cjs/components/src/themes/snapnco/components/templates/chat.js +6 -0
  69. package/dist/cjs/components/src/themes/snapnco/components/templates/chatButton.js +6 -0
  70. package/dist/cjs/components/src/themes/snapnco/components/templates/index.js +10 -0
  71. package/dist/cjs/components/src/themes/snappy/components/templates/chat.js +6 -0
  72. package/dist/cjs/components/src/themes/snappy/components/templates/chatButton.js +6 -0
  73. package/dist/cjs/components/src/themes/snappy/components/templates/index.js +10 -0
  74. package/dist/cjs/components/src/themes/themeComponents/chat.js +14 -0
  75. package/dist/cjs/components/src/themes/themeComponents/chatButton.js +9 -0
  76. package/dist/cjs/components/src/utilities/Colour/Colour.js +41 -0
  77. package/dist/cjs/components/src/utilities/snapify.js +27 -0
  78. package/dist/cjs/src/Snap.js +70 -0
  79. package/dist/cjs/src/Templates/SnapTemplates.js +55 -5
  80. package/dist/cjs/src/Templates/Stores/LibraryStore.js +51 -1
  81. package/dist/cjs/src/Templates/Stores/TemplateStore.js +2 -1
  82. package/dist/cjs/src/Templates/Stores/library/components/Chat.js +5 -0
  83. package/dist/cjs/src/Templates/Stores/library/components/ChatButton.js +5 -0
  84. package/dist/cjs/src/Templates/Stores/library/languages/es.js +487 -8
  85. package/dist/cjs/src/Templates/Stores/library/languages/fr.js +487 -8
  86. package/dist/cjs/src/create/createChatController.js +30 -0
  87. package/dist/cjs/src/create/index.js +3 -1
  88. package/dist/cjs/src/setupEvents.js +44 -0
  89. package/dist/cjs/src/utils/applyChatTargetInject.js +25 -0
  90. package/dist/cjs/src/utils/index.js +3 -1
  91. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +3 -1
  92. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  93. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +17 -0
  94. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +1 -0
  95. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +92 -0
  96. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +2 -0
  97. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +1 -0
  98. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.js +1 -0
  99. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts +6 -1
  100. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  101. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +57 -12
  102. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +13 -0
  103. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
  104. package/dist/esm/components/src/components/Atoms/Icon/paths.js +13 -0
  105. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts +30 -0
  106. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +1 -0
  107. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +215 -0
  108. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +2 -0
  109. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +1 -0
  110. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.js +1 -0
  111. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +19 -0
  112. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +1 -0
  113. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +203 -0
  114. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +2 -0
  115. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +1 -0
  116. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.js +1 -0
  117. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +36 -0
  118. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +1 -0
  119. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +252 -0
  120. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts +2 -0
  121. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts.map +1 -0
  122. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.js +1 -0
  123. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +38 -0
  124. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +1 -0
  125. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +276 -0
  126. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts +2 -0
  127. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +1 -0
  128. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.js +1 -0
  129. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +19 -0
  130. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +1 -0
  131. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +167 -0
  132. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +2 -0
  133. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +1 -0
  134. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.js +1 -0
  135. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +38 -0
  136. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +1 -0
  137. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +571 -0
  138. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +2 -0
  139. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +1 -0
  140. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.js +1 -0
  141. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts +35 -0
  142. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +1 -0
  143. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.js +246 -0
  144. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts +2 -0
  145. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts.map +1 -0
  146. package/dist/esm/components/src/components/Molecules/ChatResult/index.js +1 -0
  147. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +24 -0
  148. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +1 -0
  149. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +107 -0
  150. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +2 -0
  151. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +1 -0
  152. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.js +1 -0
  153. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +16 -0
  154. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +1 -0
  155. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +101 -0
  156. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +2 -0
  157. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +1 -0
  158. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.js +1 -0
  159. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts +2 -2
  160. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts.map +1 -1
  161. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +7 -3
  162. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  163. package/dist/esm/components/src/components/Molecules/Result/Result.js +53 -6
  164. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +3 -0
  165. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  166. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +28 -2
  167. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  168. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +25 -29
  169. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts.map +1 -1
  170. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.js +5 -1
  171. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts +41 -0
  172. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +1 -0
  173. package/dist/esm/components/src/components/Organisms/Chat/Chat.js +615 -0
  174. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts +76 -0
  175. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts.map +1 -0
  176. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.js +100 -0
  177. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts +26 -0
  178. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts.map +1 -0
  179. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.js +98 -0
  180. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts +13 -0
  181. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts.map +1 -0
  182. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +155 -0
  183. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts +19 -0
  184. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts.map +1 -0
  185. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.js +160 -0
  186. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts +18 -0
  187. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts.map +1 -0
  188. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +363 -0
  189. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts +11 -0
  190. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts.map +1 -0
  191. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.js +124 -0
  192. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts +30 -0
  193. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts.map +1 -0
  194. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.js +212 -0
  195. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts +13 -0
  196. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts.map +1 -0
  197. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +117 -0
  198. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts +19 -0
  199. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts.map +1 -0
  200. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.js +167 -0
  201. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts +14 -0
  202. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts.map +1 -0
  203. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +143 -0
  204. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts +15 -0
  205. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts.map +1 -0
  206. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.js +56 -0
  207. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +32 -0
  208. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +1 -0
  209. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +62 -0
  210. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +40 -0
  211. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +1 -0
  212. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.js +92 -0
  213. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +43 -0
  214. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +1 -0
  215. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +109 -0
  216. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts +26 -0
  217. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts.map +1 -0
  218. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +131 -0
  219. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +3 -0
  220. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts.map +1 -0
  221. package/dist/esm/components/src/components/Organisms/Chat/index.js +2 -0
  222. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts +18 -0
  223. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts.map +1 -0
  224. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.js +88 -0
  225. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts +7 -0
  226. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts.map +1 -0
  227. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.js +8 -0
  228. package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts +3 -0
  229. package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts.map +1 -0
  230. package/dist/esm/components/src/components/Organisms/ChatButton/index.js +2 -0
  231. package/dist/esm/components/src/components/Organisms/Facet/Facet.d.ts.map +1 -1
  232. package/dist/esm/components/src/components/Organisms/Facet/Facet.js +1 -5
  233. package/dist/esm/components/src/components/Organisms/Results/Results.js +1 -1
  234. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  235. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +5 -0
  236. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  237. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +5 -0
  238. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  239. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +5 -0
  240. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts +12 -0
  241. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts.map +1 -0
  242. package/dist/esm/components/src/components/Templates/Chat/Chat.js +41 -0
  243. package/dist/esm/components/src/components/Templates/Chat/index.d.ts +2 -0
  244. package/dist/esm/components/src/components/Templates/Chat/index.d.ts.map +1 -0
  245. package/dist/esm/components/src/components/Templates/Chat/index.js +1 -0
  246. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts +13 -0
  247. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts.map +1 -0
  248. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.js +41 -0
  249. package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts +2 -0
  250. package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts.map +1 -0
  251. package/dist/esm/components/src/components/Templates/ChatButton/index.js +1 -0
  252. package/dist/esm/components/src/index.d.ts +14 -0
  253. package/dist/esm/components/src/index.d.ts.map +1 -1
  254. package/dist/esm/components/src/index.js +14 -0
  255. package/dist/esm/components/src/providers/langComponents.d.ts +20 -0
  256. package/dist/esm/components/src/providers/langComponents.d.ts.map +1 -1
  257. package/dist/esm/components/src/providers/themeComponents.d.ts +203 -1
  258. package/dist/esm/components/src/providers/themeComponents.d.ts.map +1 -1
  259. package/dist/esm/components/src/providers/themeComponents.js +20 -0
  260. package/dist/esm/components/src/providers/withTracking.d.ts +2 -2
  261. package/dist/esm/components/src/providers/withTracking.d.ts.map +1 -1
  262. package/dist/esm/components/src/setupTests.js +14 -0
  263. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts +4 -0
  264. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts.map +1 -0
  265. package/dist/esm/components/src/themes/base/components/templates/chat.js +3 -0
  266. package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts +4 -0
  267. package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts.map +1 -0
  268. package/dist/esm/components/src/themes/base/components/templates/chatButton.js +3 -0
  269. package/dist/esm/components/src/themes/base/components/templates/index.d.ts.map +1 -1
  270. package/dist/esm/components/src/themes/base/components/templates/index.js +10 -0
  271. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts +4 -0
  272. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts.map +1 -0
  273. package/dist/esm/components/src/themes/bocachica/components/templates/chat.js +3 -0
  274. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts +4 -0
  275. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts.map +1 -0
  276. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.js +3 -0
  277. package/dist/esm/components/src/themes/bocachica/components/templates/index.d.ts.map +1 -1
  278. package/dist/esm/components/src/themes/bocachica/components/templates/index.js +10 -0
  279. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts +4 -0
  280. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts.map +1 -0
  281. package/dist/esm/components/src/themes/pike/components/templates/chat.js +3 -0
  282. package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts +4 -0
  283. package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts.map +1 -0
  284. package/dist/esm/components/src/themes/pike/components/templates/chatButton.js +3 -0
  285. package/dist/esm/components/src/themes/pike/components/templates/index.d.ts.map +1 -1
  286. package/dist/esm/components/src/themes/pike/components/templates/index.js +10 -0
  287. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts +4 -0
  288. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts.map +1 -0
  289. package/dist/esm/components/src/themes/snapnco/components/templates/chat.js +3 -0
  290. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts +4 -0
  291. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts.map +1 -0
  292. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.js +3 -0
  293. package/dist/esm/components/src/themes/snapnco/components/templates/index.d.ts.map +1 -1
  294. package/dist/esm/components/src/themes/snapnco/components/templates/index.js +10 -0
  295. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts +4 -0
  296. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts.map +1 -0
  297. package/dist/esm/components/src/themes/snappy/components/templates/chat.js +3 -0
  298. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts +4 -0
  299. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts.map +1 -0
  300. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.js +3 -0
  301. package/dist/esm/components/src/themes/snappy/components/templates/index.d.ts.map +1 -1
  302. package/dist/esm/components/src/themes/snappy/components/templates/index.js +10 -0
  303. package/dist/esm/components/src/themes/themeComponents/chat.d.ts +4 -0
  304. package/dist/esm/components/src/themes/themeComponents/chat.d.ts.map +1 -0
  305. package/dist/esm/components/src/themes/themeComponents/chat.js +11 -0
  306. package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts +4 -0
  307. package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts.map +1 -0
  308. package/dist/esm/components/src/themes/themeComponents/chatButton.js +6 -0
  309. package/dist/esm/components/src/utilities/Colour/Colour.d.ts +15 -0
  310. package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
  311. package/dist/esm/components/src/utilities/Colour/Colour.js +41 -0
  312. package/dist/esm/components/src/utilities/snapify.d.ts +3 -2
  313. package/dist/esm/components/src/utilities/snapify.d.ts.map +1 -1
  314. package/dist/esm/components/src/utilities/snapify.js +29 -2
  315. package/dist/esm/src/Snap.d.ts +2 -1
  316. package/dist/esm/src/Snap.d.ts.map +1 -1
  317. package/dist/esm/src/Snap.js +71 -1
  318. package/dist/esm/src/Templates/SnapTemplates.d.ts +2 -1
  319. package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
  320. package/dist/esm/src/Templates/SnapTemplates.js +54 -5
  321. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +43 -0
  322. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  323. package/dist/esm/src/Templates/Stores/LibraryStore.js +51 -1
  324. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +19 -4
  325. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  326. package/dist/esm/src/Templates/Stores/TemplateStore.js +2 -1
  327. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts +2 -0
  328. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts.map +1 -0
  329. package/dist/esm/src/Templates/Stores/library/components/Chat.js +1 -0
  330. package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts +2 -0
  331. package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts.map +1 -0
  332. package/dist/esm/src/Templates/Stores/library/components/ChatButton.js +1 -0
  333. package/dist/esm/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
  334. package/dist/esm/src/Templates/Stores/library/languages/es.js +487 -8
  335. package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
  336. package/dist/esm/src/Templates/Stores/library/languages/fr.js +487 -8
  337. package/dist/esm/src/create/createChatController.d.ts +5 -0
  338. package/dist/esm/src/create/createChatController.d.ts.map +1 -0
  339. package/dist/esm/src/create/createChatController.js +28 -0
  340. package/dist/esm/src/create/index.d.ts +1 -0
  341. package/dist/esm/src/create/index.d.ts.map +1 -1
  342. package/dist/esm/src/create/index.js +1 -0
  343. package/dist/esm/src/setupEvents.d.ts +13 -0
  344. package/dist/esm/src/setupEvents.d.ts.map +1 -1
  345. package/dist/esm/src/setupEvents.js +44 -0
  346. package/dist/esm/src/types.d.ts +13 -3
  347. package/dist/esm/src/types.d.ts.map +1 -1
  348. package/dist/esm/src/utils/applyChatTargetInject.d.ts +3 -0
  349. package/dist/esm/src/utils/applyChatTargetInject.d.ts.map +1 -0
  350. package/dist/esm/src/utils/applyChatTargetInject.js +22 -0
  351. package/dist/esm/src/utils/index.d.ts +1 -0
  352. package/dist/esm/src/utils/index.d.ts.map +1 -1
  353. package/dist/esm/src/utils/index.js +1 -0
  354. package/package.json +14 -12
@@ -88,6 +88,493 @@ export const fr = {
88
88
  'aria-label': 'Soumettre Rechercher',
89
89
  },
90
90
  },
91
+ chatButton: {
92
+ attributes: {
93
+ 'aria-label': 'Ouvrir le chat',
94
+ },
95
+ },
96
+ },
97
+ chatButton: {
98
+ openChatButton: {
99
+ attributes: {
100
+ 'aria-label': 'Ouvrir le chat',
101
+ title: 'Ouvrir le chat',
102
+ },
103
+ },
104
+ closeChatButton: {
105
+ attributes: {
106
+ 'aria-label': 'Fermer le chat',
107
+ title: 'Fermer le chat',
108
+ },
109
+ },
110
+ },
111
+ chat: {
112
+ openChatButton: {
113
+ attributes: {
114
+ 'aria-label': 'Ouvrir le chat',
115
+ title: 'Ouvrir le chat',
116
+ },
117
+ },
118
+ closeChatButton: {
119
+ attributes: {
120
+ 'aria-label': 'Fermer le chat',
121
+ title: 'Fermer le chat',
122
+ },
123
+ },
124
+ newChatButton: {
125
+ attributes: {
126
+ 'aria-label': 'Nouveau chat',
127
+ title: 'Nouveau chat',
128
+ },
129
+ },
130
+ chatHistoryButton: {
131
+ attributes: {
132
+ 'aria-label': 'Historique du chat',
133
+ title: 'Historique du chat',
134
+ },
135
+ },
136
+ historyTitle: {
137
+ value: 'Historique',
138
+ },
139
+ historyClearButton: {
140
+ value: 'effacer',
141
+ },
142
+ historyNewChatLabel: {
143
+ value: 'Nouveau chat',
144
+ },
145
+ sideChatRegionLabel: {
146
+ attributes: {
147
+ 'aria-label': 'Détails de la conversation',
148
+ },
149
+ },
150
+ inspirationResultTitle: {
151
+ value: "Scénarios d'inspiration",
152
+ },
153
+ inspirationResultSubtitle: {
154
+ value: 'Choisissez une direction de style à explorer',
155
+ },
156
+ productComparisonTitle: {
157
+ value: 'Comparaison de produits',
158
+ },
159
+ productComparisonSubtitle: {
160
+ value: (data) => `Comparaison de ${data?.count ?? ''} produits`,
161
+ },
162
+ chatMessagesLabel: {
163
+ attributes: {
164
+ 'aria-label': 'Messages du chat',
165
+ },
166
+ },
167
+ newMessagesButton: {
168
+ value: 'Nouveaux messages',
169
+ },
170
+ loadingVerbsProductQuery: {
171
+ value: 'Réflexion, Recherche, Analyse, Collecte des détails',
172
+ },
173
+ loadingVerbsProductSearch: {
174
+ value: 'Recherche, Parcours du catalogue, Découverte de produits, Sélection des résultats',
175
+ },
176
+ loadingVerbsProductComparison: {
177
+ value: 'Comparaison, Analyse, Évaluation, Examen des options',
178
+ },
179
+ loadingVerbsImageSearch: {
180
+ value: "Analyse de l'image, Identification, Recherche, Correspondance",
181
+ },
182
+ loadingVerbsProductSimilar: {
183
+ value: "Découverte d'articles similaires, Recherche, Correspondance, Sélection",
184
+ },
185
+ loadingVerbsInspirationRequest: {
186
+ value: 'Remue-méninges, Imagination, Sélection, Inspiration',
187
+ },
188
+ feedbackPrompt: {
189
+ value: "Comment se passe votre expérience jusqu'à présent ?",
190
+ },
191
+ feedbackThanks: {
192
+ value: 'Merci pour votre retour',
193
+ },
194
+ feedbackThumbsUpButton: {
195
+ attributes: {
196
+ 'aria-label': "J'aime",
197
+ title: "J'aime",
198
+ },
199
+ },
200
+ feedbackThumbsDownButton: {
201
+ attributes: {
202
+ 'aria-label': "Je n'aime pas",
203
+ title: "Je n'aime pas",
204
+ },
205
+ },
206
+ feedbackDismissButton: {
207
+ attributes: {
208
+ 'aria-label': 'Ignorer le retour',
209
+ },
210
+ },
211
+ comparisonsTitle: {
212
+ value: (data) => `Comparer les produits (${data?.count ?? 0}/${data?.max ?? 0})`,
213
+ },
214
+ comparisonsClearButton: {
215
+ value: 'effacer',
216
+ },
217
+ comparisonsAddText: {
218
+ value: 'Ajouter',
219
+ },
220
+ comparisonsCompareButton: {
221
+ value: 'Comparer',
222
+ attributes: {
223
+ title: 'Comparer',
224
+ },
225
+ },
226
+ comparisonsRemoveButton: {
227
+ attributes: {
228
+ 'aria-label': (data) => `Supprimer ${data?.name || 'le produit'} de la comparaison`,
229
+ },
230
+ },
231
+ chatUnavailableMessage: {
232
+ value: 'Le service est temporairement indisponible. En attendant, utilisez la barre de recherche ci-dessus pour trouver ce dont vous avez besoin !',
233
+ },
234
+ highVolumeMessage: {
235
+ value: "Le chat est actuellement indisponible en raison d'un volume élevé de demandes.",
236
+ },
237
+ highVolumeSubMessage: {
238
+ value: 'En attendant, utilisez la barre de recherche ci-dessus pour trouver ce dont vous avez besoin !',
239
+ },
240
+ newSessionButton: {
241
+ value: 'Nouvelle session',
242
+ },
243
+ facetsTitle: {
244
+ value: 'Filtrer par :',
245
+ },
246
+ facetsApplyButton: {
247
+ value: (data) => `Appliquer (${data?.count ?? 0})`,
248
+ },
249
+ facetsClearButton: {
250
+ value: 'Effacer les filtres',
251
+ },
252
+ attachmentCompareTitle: {
253
+ value: 'Comparer ces produits',
254
+ },
255
+ attachmentAskProductTitle: {
256
+ value: 'Poser une question sur ce produit',
257
+ },
258
+ attachmentImageSimilarTitle: {
259
+ value: 'Trouver des produits similaires à cette image :',
260
+ },
261
+ topicDriftScopeMessage: {
262
+ value: 'Je suis là pour vous aider dans vos achats',
263
+ },
264
+ topicDriftScopeSubMessage: {
265
+ value: 'Essayez de poser des questions sur les produits, les comparaisons ou les recommandations',
266
+ },
267
+ topicDriftMessage: {
268
+ value: 'Vous cherchez quelque chose de nouveau ?',
269
+ },
270
+ topicDriftSubMessage: {
271
+ value: 'Démarrer une nouvelle session pour une meilleure assistance, ou continuer dans celle-ci ?',
272
+ },
273
+ topicDriftDismissButton: {
274
+ attributes: {
275
+ 'aria-label': 'Ignorer',
276
+ },
277
+ },
278
+ inputPlaceholder: {
279
+ value: 'Saisissez votre message...',
280
+ },
281
+ inputPlaceholderAskProduct: {
282
+ value: 'Posez une question sur ce produit...',
283
+ },
284
+ inputPlaceholderCompare: {
285
+ value: 'Que souhaitez-vous comparer ?',
286
+ },
287
+ inputPlaceholderComparedProducts: {
288
+ value: 'Posez une question sur les produits comparés...',
289
+ },
290
+ inputPlaceholderAskImage: {
291
+ value: 'Posez une question sur cette image...',
292
+ },
293
+ inputPlaceholderAddCompare: {
294
+ value: 'Ajoutez un autre produit à comparer...',
295
+ },
296
+ uploadImageButton: {
297
+ attributes: {
298
+ 'aria-label': 'Importer une image',
299
+ title: 'Importer une image',
300
+ },
301
+ },
302
+ sendMessageButton: {
303
+ attributes: {
304
+ 'aria-label': 'Envoyer le message',
305
+ title: 'Envoyer le message',
306
+ },
307
+ },
308
+ dropOverlayText: {
309
+ value: "Déposez l'image pour l'importer",
310
+ },
311
+ disclaimerText: {
312
+ value: "Assistant alimenté par l'IA. Il peut parfois faire des erreurs. Évitez de partager des données personnelles.",
313
+ },
314
+ privacyPolicyLinkText: {
315
+ value: 'Politique de confidentialité',
316
+ },
317
+ expiredMessage: {
318
+ value: 'Ce chat a expiré. Veuillez démarrer un nouveau chat.',
319
+ },
320
+ },
321
+ chatLoadingIndicator: {
322
+ thinkingVerb: {
323
+ value: 'Réflexion',
324
+ },
325
+ searchingVerb: {
326
+ value: 'Recherche',
327
+ },
328
+ analyzingVerb: {
329
+ value: 'Analyse',
330
+ },
331
+ generatingVerb: {
332
+ value: 'Génération',
333
+ },
334
+ processingVerb: {
335
+ value: 'Traitement',
336
+ },
337
+ },
338
+ chatAttachmentContext: {
339
+ closeButton: {
340
+ attributes: {
341
+ 'aria-label': 'Fermer',
342
+ },
343
+ },
344
+ openItemButton: {
345
+ attributes: {
346
+ 'aria-label': "Ouvrir l'élément",
347
+ },
348
+ },
349
+ loadingIndicator: {
350
+ attributes: {
351
+ 'aria-label': "Chargement de l'élément",
352
+ },
353
+ },
354
+ removeButton: {
355
+ attributes: {
356
+ 'aria-label': "Supprimer l'élément",
357
+ },
358
+ },
359
+ uploadFailedText: {
360
+ value: "Échec de l'importation",
361
+ },
362
+ },
363
+ chatInspirationResultMessage: {
364
+ searchQueryButton: {
365
+ attributes: {
366
+ 'aria-label': 'Rechercher ce terme',
367
+ },
368
+ },
369
+ openProductButton: {
370
+ attributes: {
371
+ 'aria-label': 'Ouvrir le produit',
372
+ },
373
+ },
374
+ },
375
+ chatMessageText: {
376
+ viewInspirationButton: {
377
+ attributes: {
378
+ 'aria-label': "Voir l'inspiration",
379
+ title: "Voir l'inspiration",
380
+ },
381
+ },
382
+ closeInspirationButton: {
383
+ value: "Fermer l'inspiration",
384
+ attributes: {
385
+ 'aria-label': "Fermer l'inspiration",
386
+ title: "Fermer l'inspiration",
387
+ },
388
+ },
389
+ exploreInspirationButton: {
390
+ value: "Explorer les scénarios d'inspiration",
391
+ attributes: {
392
+ 'aria-label': "Explorer les scénarios d'inspiration",
393
+ },
394
+ },
395
+ viewComparisonButton: {
396
+ attributes: {
397
+ 'aria-label': 'Voir la comparaison',
398
+ title: 'Voir la comparaison',
399
+ },
400
+ },
401
+ closeComparisonButton: {
402
+ value: 'Fermer la comparaison',
403
+ attributes: {
404
+ 'aria-label': 'Fermer la comparaison',
405
+ title: 'Fermer la comparaison',
406
+ },
407
+ },
408
+ exploreComparisonButton: {
409
+ value: 'Explorer les données de comparaison',
410
+ attributes: {
411
+ 'aria-label': 'Explorer les données de comparaison',
412
+ },
413
+ },
414
+ showDetailsButton: {
415
+ value: 'Afficher les détails',
416
+ attributes: {
417
+ 'aria-label': 'Afficher les détails de la comparaison',
418
+ },
419
+ },
420
+ },
421
+ chatMessageUser: {
422
+ requestTypeProductQuery: {
423
+ value: 'Question sur le produit',
424
+ },
425
+ requestTypeProductComparison: {
426
+ value: 'Comparaison de produits',
427
+ },
428
+ requestTypeProductFilter: {
429
+ value: 'Filtrage des produits',
430
+ },
431
+ requestTypeProductSearch: {
432
+ value: 'Recherche de produits',
433
+ },
434
+ requestTypeImageSearch: {
435
+ value: 'Recherche par image',
436
+ },
437
+ requestTypeProductSimilar: {
438
+ value: 'Recherche de produits similaires',
439
+ },
440
+ productAttachmentButton: {
441
+ attributes: {
442
+ 'aria-label': 'Voir les détails du produit',
443
+ title: 'Voir les détails du produit',
444
+ },
445
+ },
446
+ facetAttachment: {
447
+ attributes: {
448
+ 'aria-label': 'Filtre appliqué',
449
+ title: 'Filtre appliqué',
450
+ },
451
+ },
452
+ facetOverflow: {
453
+ attributes: {
454
+ 'aria-label': 'Filtres supplémentaires',
455
+ title: 'Filtres supplémentaires',
456
+ },
457
+ },
458
+ },
459
+ chatProductComparisonMessage: {
460
+ comparisonTable: {
461
+ value: 'Comparaison de produits',
462
+ attributes: {
463
+ 'aria-label': 'Comparaison de produits',
464
+ },
465
+ },
466
+ featureColumnHeader: {
467
+ attributes: {
468
+ 'aria-label': 'Caractéristique',
469
+ },
470
+ },
471
+ viewProductButton: {
472
+ attributes: {
473
+ 'aria-label': 'Voir les détails du produit',
474
+ },
475
+ },
476
+ },
477
+ chatProductQueryMessage: {
478
+ loadingText: {
479
+ value: 'Chargement des détails du produit...',
480
+ },
481
+ backToComparisonButton: {
482
+ value: 'Retour à la comparaison',
483
+ attributes: {
484
+ 'aria-label': 'Retour à la comparaison',
485
+ },
486
+ },
487
+ backToInspirationButton: {
488
+ value: "Retour à l'inspiration",
489
+ attributes: {
490
+ 'aria-label': "Retour à l'inspiration",
491
+ },
492
+ },
493
+ addToCartButton: {
494
+ value: 'Ajouter au panier',
495
+ },
496
+ similarButton: {
497
+ value: 'Similaires',
498
+ },
499
+ discussButton: {
500
+ value: 'Discuter',
501
+ },
502
+ inStockText: {
503
+ value: 'En stock',
504
+ },
505
+ outOfStockText: {
506
+ value: 'Rupture de stock',
507
+ },
508
+ unavailableText: {
509
+ value: 'indisponible',
510
+ },
511
+ variantsGroup: {
512
+ attributes: {
513
+ 'aria-label': 'Sélection de variantes',
514
+ },
515
+ },
516
+ productInformationTable: {
517
+ attributes: {
518
+ 'aria-label': 'Informations sur le produit',
519
+ },
520
+ },
521
+ },
522
+ chatResult: {
523
+ similarButton: {
524
+ value: 'Similaires',
525
+ attributes: {
526
+ 'aria-label': (data) => `Afficher les produits similaires à ${data?.result?.display?.mappings?.core?.name || 'ce produit'}`,
527
+ },
528
+ },
529
+ compareButton: {
530
+ value: 'Comparer',
531
+ attributes: {
532
+ 'aria-label': (data) => `Comparer ${data?.result?.display?.mappings?.core?.name || 'le produit'}`,
533
+ },
534
+ },
535
+ addedToComparisonButton: {
536
+ attributes: {
537
+ 'aria-label': (data) => `${data?.result?.display?.mappings?.core?.name || 'Produit'} ajouté à la comparaison`,
538
+ title: 'Ajouté à la comparaison',
539
+ },
540
+ },
541
+ discussButton: {
542
+ attributes: {
543
+ 'aria-label': (data) => `Discuter de ${data?.result?.display?.mappings?.core?.name || 'ce produit'}`,
544
+ title: 'Discuter du produit',
545
+ },
546
+ },
547
+ addToCartButton: {
548
+ attributes: {
549
+ 'aria-label': (data) => `Ajouter ${data?.result?.display?.mappings?.core?.name || 'le produit'} au panier`,
550
+ title: 'Ajouter au panier',
551
+ },
552
+ },
553
+ configureButton: {
554
+ attributes: {
555
+ 'aria-label': (data) => `Configurer ${data?.result?.display?.mappings?.core?.name || 'le produit'}`,
556
+ title: 'Configurer',
557
+ },
558
+ },
559
+ productLink: {
560
+ attributes: {
561
+ 'aria-label': (data) => `Ouvrir ${data?.result?.display?.mappings?.core?.name || 'le produit'}`,
562
+ },
563
+ },
564
+ },
565
+ result: {
566
+ addToCartButtonText: {
567
+ value: 'Tout ajouter au panier',
568
+ },
569
+ addToCartButtonSuccessText: {
570
+ value: 'Ajouté !',
571
+ },
572
+ discussProductButton: {
573
+ attributes: {
574
+ 'aria-label': 'Discuter de ce produit',
575
+ title: 'Discuter de ce produit',
576
+ },
577
+ },
91
578
  },
92
579
  recommendationBundle: {
93
580
  seedText: {
@@ -225,14 +712,6 @@ export const fr = {
225
712
  value: ({ pagination }) => `${pagination?.totalResults} produits`,
226
713
  },
227
714
  },
228
- result: {
229
- addToCartButtonText: {
230
- value: 'Tout ajouter au panier',
231
- },
232
- addToCartButtonSuccessText: {
233
- value: 'Ajouté !',
234
- },
235
- },
236
715
  overlayResult: {
237
716
  addToCartButtonText: {
238
717
  value: 'Tout ajouter au panier',
@@ -0,0 +1,5 @@
1
+ import { ChatController } from '@athoscommerce/snap-controller';
2
+ import type { SnapControllerServices, SnapChatControllerConfig } from '../types';
3
+ export default _default;
4
+ declare function _default(config: SnapChatControllerConfig, services?: SnapControllerServices): ChatController;
5
+ //# sourceMappingURL=createChatController.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createChatController.d.ts","sourceRoot":"","sources":["../../../../src/create/createChatController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAShE,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;;0BAEjE,MAAM,EAAE,wBAAwB,EAAE,QAAQ,CAAC,EAAE,sBAAsB,GAAG,cAAc"}
@@ -0,0 +1,28 @@
1
+ import { ChatController } from '@athoscommerce/snap-controller';
2
+ import { Client } from '@athoscommerce/snap-client';
3
+ import { ChatStore } from '@athoscommerce/snap-store-mobx';
4
+ import { UrlManager, UrlTranslator, reactLinker } from '@athoscommerce/snap-url-manager';
5
+ import { EventManager } from '@athoscommerce/snap-event-manager';
6
+ import { Profiler } from '@athoscommerce/snap-profiler';
7
+ import { Logger } from '@athoscommerce/snap-logger';
8
+ import { Tracker } from '@athoscommerce/snap-tracker';
9
+ export default (config, services) => {
10
+ const urlManager = (services?.urlManager || new UrlManager(new UrlTranslator(config.url), reactLinker)).detach(true);
11
+ // set client mode
12
+ if (config.mode && config.client) {
13
+ config.client.config = config.client.config || {};
14
+ config.client.config.mode = config.mode;
15
+ }
16
+ const client = services?.client || new Client(config.client.globals, config.client.config);
17
+ const siteId = config.client?.globals?.siteId || client.siteId;
18
+ const cntrlr = new ChatController(config.controller, {
19
+ client,
20
+ store: services?.store || new ChatStore({ ...config.controller, siteId }, { urlManager }),
21
+ urlManager,
22
+ eventManager: services?.eventManager || new EventManager(),
23
+ profiler: services?.profiler || new Profiler(),
24
+ logger: services?.logger || new Logger({ mode: config.mode }),
25
+ tracker: services?.tracker || new Tracker(config.client.globals),
26
+ }, config.context);
27
+ return cntrlr;
28
+ };
@@ -1,4 +1,5 @@
1
1
  export { default as createAutocompleteController } from './createAutocompleteController';
2
+ export { default as createChatController } from './createChatController';
2
3
  export { default as createFinderController } from './createFinderController';
3
4
  export { default as createRecommendationController } from './createRecommendationController';
4
5
  export { default as createSearchController } from './createSearchController';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/create/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/create/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,sBAAsB,EAAE,MAAM,0BAA0B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  export { default as createAutocompleteController } from './createAutocompleteController';
2
+ export { default as createChatController } from './createChatController';
2
3
  export { default as createFinderController } from './createFinderController';
3
4
  export { default as createRecommendationController } from './createRecommendationController';
4
5
  export { default as createSearchController } from './createSearchController';
@@ -1,3 +1,16 @@
1
+ import type { MoiRequestModelProductQuery, MoiRequestModelProductSearch, MoiRequestModelProductComparison, MoiRequestModelImageSearch, MoiRequestModelProductSimilar, MoiRequestModelInspiration, MoiRequestModelContent } from '@athoscommerce/snap-client';
1
2
  import { EventManager } from '@athoscommerce/snap-event-manager';
3
+ type ControllerChatSendBase = {
4
+ controllerIds?: (string | RegExp)[];
5
+ };
6
+ /** Payload for the `controller/chat/send` global event. Carries an optional chat request to fire
7
+ * after opening the chat. The request shape is the same discriminated union the controller
8
+ * uses internally — `requestType` may be omitted, in which case it defaults to `'general'`
9
+ * when a `message` is supplied. */
10
+ export type ControllerChatSendData = (ControllerChatSendBase & {
11
+ requestType?: 'general';
12
+ message?: string;
13
+ }) | (ControllerChatSendBase & MoiRequestModelProductQuery) | (ControllerChatSendBase & MoiRequestModelProductSearch) | (ControllerChatSendBase & MoiRequestModelProductComparison) | (ControllerChatSendBase & MoiRequestModelImageSearch) | (ControllerChatSendBase & MoiRequestModelProductSimilar) | (ControllerChatSendBase & MoiRequestModelInspiration) | (ControllerChatSendBase & MoiRequestModelContent);
2
14
  export declare const setupEvents: () => EventManager;
15
+ export {};
3
16
  //# sourceMappingURL=setupEvents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupEvents.d.ts","sourceRoot":"","sources":["../../../src/setupEvents.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAQ,MAAM,mCAAmC,CAAC;AAWvE,eAAO,MAAM,WAAW,oBAwCvB,CAAC"}
1
+ {"version":3,"file":"setupEvents.d.ts","sourceRoot":"","sources":["../../../src/setupEvents.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACX,2BAA2B,EAC3B,4BAA4B,EAC5B,gCAAgC,EAChC,0BAA0B,EAC1B,6BAA6B,EAC7B,0BAA0B,EAC1B,sBAAsB,EACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAQ,MAAM,mCAAmC,CAAC;AAWvE,KAAK,sBAAsB,GAAG;IAC7B,aAAa,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;CACpC,CAAC;AAEF;;;mCAGmC;AACnC,MAAM,MAAM,sBAAsB,GAC/B,CAAC,sBAAsB,GAAG;IAAE,WAAW,CAAC,EAAE,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GACxE,CAAC,sBAAsB,GAAG,2BAA2B,CAAC,GACtD,CAAC,sBAAsB,GAAG,4BAA4B,CAAC,GACvD,CAAC,sBAAsB,GAAG,gCAAgC,CAAC,GAC3D,CAAC,sBAAsB,GAAG,0BAA0B,CAAC,GACrD,CAAC,sBAAsB,GAAG,6BAA6B,CAAC,GACxD,CAAC,sBAAsB,GAAG,0BAA0B,CAAC,GACrD,CAAC,sBAAsB,GAAG,sBAAsB,CAAC,CAAC;AAOrD,eAAO,MAAM,WAAW,oBAiGvB,CAAC"}
@@ -29,6 +29,50 @@ export const setupEvents = () => {
29
29
  });
30
30
  await next();
31
31
  });
32
+ eventManager.on('controller/chat/send', async (data, next) => {
33
+ const { controllerIds, ...payload } = (data || {});
34
+ const controllers = matchControllers(controllerIds).filter((controller) => {
35
+ return Boolean(controller.type === 'chat');
36
+ });
37
+ // A request is dispatched only when the payload carries either an explicit
38
+ // requestType or a message. With nothing to send the event still opens the chat.
39
+ const hasRequest = 'requestType' in payload || 'message' in payload;
40
+ const requestData = hasRequest ? { requestType: 'general', ...payload } : null;
41
+ controllers.map((controller) => {
42
+ const chatController = controller;
43
+ chatController.openChat();
44
+ if (requestData) {
45
+ chatController.search({ data: requestData });
46
+ }
47
+ });
48
+ await next();
49
+ });
50
+ eventManager.on('controller/chat/productQuery', async (data, next) => {
51
+ const { controllerIds, result } = data || {};
52
+ const controllers = matchControllers(controllerIds).filter((controller) => {
53
+ return Boolean(controller.type === 'chat');
54
+ });
55
+ controllers.map((controller) => {
56
+ // openChat first — it replaces an expired session with a fresh chat,
57
+ // which would otherwise discard the attachment productQuery adds
58
+ controller.openChat();
59
+ controller.productQuery(result);
60
+ });
61
+ await next();
62
+ });
63
+ eventManager.on('controller/chat/productSimilar', async (data, next) => {
64
+ const { controllerIds, result } = data || {};
65
+ const controllers = matchControllers(controllerIds).filter((controller) => {
66
+ return Boolean(controller.type === 'chat');
67
+ });
68
+ controllers.map((controller) => {
69
+ // openChat first — it replaces an expired session with a fresh chat,
70
+ // which would otherwise orphan the search productSimilar fires
71
+ controller.openChat();
72
+ controller.productSimilar(result);
73
+ });
74
+ await next();
75
+ });
32
76
  return eventManager;
33
77
  };
34
78
  const matchControllers = (matchIds) => {
@@ -1,6 +1,6 @@
1
1
  import type { Client, ClientConfig, ClientGlobals } from '@athoscommerce/snap-client';
2
- import type { ControllerConfig, SearchControllerConfig, AutocompleteControllerConfig, FinderControllerConfig, RecommendationControllerConfig, ContextVariables } from '@athoscommerce/snap-controller';
3
- import type { SearchStore, AutocompleteStore, FinderStore, RecommendationStore } from '@athoscommerce/snap-store-mobx';
2
+ import type { ControllerConfig, SearchControllerConfig, AutocompleteControllerConfig, FinderControllerConfig, RecommendationControllerConfig, ContextVariables, ChatControllerConfig } from '@athoscommerce/snap-controller';
3
+ import type { SearchStore, AutocompleteStore, FinderStore, RecommendationStore, ChatStore } from '@athoscommerce/snap-store-mobx';
4
4
  import type { UrlManager, UrlTranslatorConfig, UrlState } from '@athoscommerce/snap-url-manager';
5
5
  import type { EventManager } from '@athoscommerce/snap-event-manager';
6
6
  import type { Profiler } from '@athoscommerce/snap-profiler';
@@ -12,7 +12,7 @@ import { AppMode } from '@athoscommerce/snap-toolbox';
12
12
  export type IntegrationPlatforms = 'shopify' | 'bigCommerce' | 'magento2' | 'other';
13
13
  export type SnapControllerServices = {
14
14
  client?: Client;
15
- store?: SearchStore | AutocompleteStore | FinderStore | RecommendationStore;
15
+ store?: SearchStore | AutocompleteStore | FinderStore | RecommendationStore | ChatStore;
16
16
  urlManager?: UrlManager;
17
17
  eventManager?: EventManager;
18
18
  profiler?: Profiler;
@@ -56,6 +56,16 @@ export type SnapSearchControllerConfig = {
56
56
  controller: SearchControllerConfig;
57
57
  context?: ContextVariables;
58
58
  };
59
+ export type SnapChatControllerConfig = {
60
+ mode?: keyof typeof AppMode | AppMode;
61
+ url?: UrlTranslatorConfig;
62
+ client?: {
63
+ globals: ClientGlobals;
64
+ config?: ClientConfig;
65
+ };
66
+ controller: ChatControllerConfig;
67
+ context?: ContextVariables;
68
+ };
59
69
  export type SnapAutocompleteControllerConfig = {
60
70
  mode?: keyof typeof AppMode | AppMode;
61
71
  url?: UrlTranslatorConfig;