@athoscommerce/snap-preact 1.12.1-beta.152 → 1.13.0

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 (421) hide show
  1. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +11 -56
  2. package/dist/cjs/components/src/components/Atoms/Icon/paths.js +0 -13
  3. package/dist/cjs/components/src/components/Atoms/Price/Price.js +2 -2
  4. package/dist/cjs/components/src/components/Molecules/CustomComponentWrapper/CustomComponentWrapper.js +1 -1
  5. package/dist/cjs/components/src/components/Molecules/Result/Result.js +4 -51
  6. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +2 -28
  7. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +28 -24
  8. package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.js +59 -34
  9. package/dist/cjs/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +13 -8
  10. package/dist/cjs/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +13 -8
  11. package/dist/cjs/components/src/components/Organisms/Results/Results.js +1 -1
  12. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +0 -5
  13. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +0 -5
  14. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +0 -5
  15. package/dist/cjs/components/src/hooks/useLayoutOptions.js +19 -14
  16. package/dist/cjs/components/src/index.js +1 -17
  17. package/dist/cjs/components/src/providers/themeComponents.js +0 -20
  18. package/dist/cjs/components/src/themes/base/components/templates/index.js +0 -10
  19. package/dist/cjs/components/src/themes/bocachica/components/templates/index.js +0 -10
  20. package/dist/cjs/components/src/themes/pike/components/templates/index.js +0 -10
  21. package/dist/cjs/components/src/themes/snapnco/components/templates/index.js +0 -10
  22. package/dist/cjs/components/src/themes/snappy/components/templates/index.js +0 -10
  23. package/dist/cjs/components/src/utilities/Colour/Colour.js +0 -41
  24. package/dist/cjs/components/src/utilities/mergeProps.js +647 -184
  25. package/dist/cjs/components/src/utilities/snapify.js +0 -27
  26. package/dist/cjs/src/Snap.js +1 -71
  27. package/dist/cjs/src/Templates/SnapTemplates.js +21 -107
  28. package/dist/cjs/src/Templates/Stores/LibraryStore.js +3 -51
  29. package/dist/cjs/src/Templates/Stores/TemplateStore.js +40 -11
  30. package/dist/cjs/src/Templates/Stores/ThemeStore.js +125 -32
  31. package/dist/cjs/src/Templates/Stores/library/currencies/currencies.js +52 -29
  32. package/dist/cjs/src/Templates/Stores/library/languages/ar.js +0 -474
  33. package/dist/cjs/src/Templates/Stores/library/languages/de.js +0 -474
  34. package/dist/cjs/src/Templates/Stores/library/languages/es.js +0 -479
  35. package/dist/cjs/src/Templates/Stores/library/languages/fr.js +0 -479
  36. package/dist/cjs/src/Templates/Stores/library/languages/hi.js +0 -474
  37. package/dist/cjs/src/Templates/Stores/library/languages/it.js +0 -474
  38. package/dist/cjs/src/Templates/Stores/library/languages/ja.js +0 -474
  39. package/dist/cjs/src/Templates/Stores/library/languages/ko.js +0 -474
  40. package/dist/cjs/src/Templates/Stores/library/languages/nl.js +0 -474
  41. package/dist/cjs/src/Templates/Stores/library/languages/pt.js +0 -474
  42. package/dist/cjs/src/Templates/Stores/library/languages/ru.js +0 -474
  43. package/dist/cjs/src/Templates/Stores/library/languages/tr.js +0 -474
  44. package/dist/cjs/src/Templates/Stores/library/languages/vi.js +0 -474
  45. package/dist/cjs/src/Templates/Stores/library/languages/zh.js +0 -474
  46. package/dist/cjs/src/Templates/Stores/library/plugins/shopify/pluginCurrency.js +5 -0
  47. package/dist/cjs/src/create/index.js +1 -3
  48. package/dist/cjs/src/setupEvents.js +0 -44
  49. package/dist/cjs/src/utils/index.js +1 -3
  50. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +1 -3
  51. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  52. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts +1 -6
  53. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  54. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +12 -57
  55. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +0 -13
  56. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
  57. package/dist/esm/components/src/components/Atoms/Icon/paths.js +0 -13
  58. package/dist/esm/components/src/components/Atoms/Price/Price.d.ts +2 -0
  59. package/dist/esm/components/src/components/Atoms/Price/Price.d.ts.map +1 -1
  60. package/dist/esm/components/src/components/Atoms/Price/Price.js +2 -2
  61. package/dist/esm/components/src/components/Molecules/CustomComponentWrapper/CustomComponentWrapper.d.ts.map +1 -1
  62. package/dist/esm/components/src/components/Molecules/CustomComponentWrapper/CustomComponentWrapper.js +1 -1
  63. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts +2 -2
  64. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts.map +1 -1
  65. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +3 -7
  66. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  67. package/dist/esm/components/src/components/Molecules/Result/Result.js +4 -51
  68. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +0 -3
  69. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  70. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +2 -28
  71. package/dist/esm/components/src/components/Molecules/Select/Select.d.ts +2 -2
  72. package/dist/esm/components/src/components/Molecules/Select/Select.d.ts.map +1 -1
  73. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  74. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +29 -25
  75. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts +1 -0
  76. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts.map +1 -1
  77. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.js +59 -34
  78. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts.map +1 -1
  79. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +13 -8
  80. package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.d.ts.map +1 -1
  81. package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +13 -8
  82. package/dist/esm/components/src/components/Organisms/Results/Results.js +1 -1
  83. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  84. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +0 -5
  85. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  86. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +0 -5
  87. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  88. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +0 -5
  89. package/dist/esm/components/src/hooks/useLayoutOptions.d.ts.map +1 -1
  90. package/dist/esm/components/src/hooks/useLayoutOptions.js +19 -14
  91. package/dist/esm/components/src/index.d.ts +0 -14
  92. package/dist/esm/components/src/index.d.ts.map +1 -1
  93. package/dist/esm/components/src/index.js +0 -14
  94. package/dist/esm/components/src/providers/langComponents.d.ts +5 -20
  95. package/dist/esm/components/src/providers/langComponents.d.ts.map +1 -1
  96. package/dist/esm/components/src/providers/themeComponents.d.ts +215 -396
  97. package/dist/esm/components/src/providers/themeComponents.d.ts.map +1 -1
  98. package/dist/esm/components/src/providers/themeComponents.js +0 -20
  99. package/dist/esm/components/src/providers/withTracking.d.ts +2 -2
  100. package/dist/esm/components/src/providers/withTracking.d.ts.map +1 -1
  101. package/dist/esm/components/src/themes/base/components/templates/index.d.ts.map +1 -1
  102. package/dist/esm/components/src/themes/base/components/templates/index.js +0 -10
  103. package/dist/esm/components/src/themes/bocachica/components/templates/index.d.ts.map +1 -1
  104. package/dist/esm/components/src/themes/bocachica/components/templates/index.js +0 -10
  105. package/dist/esm/components/src/themes/pike/components/templates/index.d.ts.map +1 -1
  106. package/dist/esm/components/src/themes/pike/components/templates/index.js +0 -10
  107. package/dist/esm/components/src/themes/snapnco/components/templates/index.d.ts.map +1 -1
  108. package/dist/esm/components/src/themes/snapnco/components/templates/index.js +0 -10
  109. package/dist/esm/components/src/themes/snappy/components/templates/index.d.ts.map +1 -1
  110. package/dist/esm/components/src/themes/snappy/components/templates/index.js +0 -10
  111. package/dist/esm/components/src/utilities/Colour/Colour.d.ts +0 -15
  112. package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
  113. package/dist/esm/components/src/utilities/Colour/Colour.js +0 -41
  114. package/dist/esm/components/src/utilities/mergeProps.d.ts +11 -0
  115. package/dist/esm/components/src/utilities/mergeProps.d.ts.map +1 -1
  116. package/dist/esm/components/src/utilities/mergeProps.js +647 -184
  117. package/dist/esm/components/src/utilities/snapify.d.ts +2 -3
  118. package/dist/esm/components/src/utilities/snapify.d.ts.map +1 -1
  119. package/dist/esm/components/src/utilities/snapify.js +2 -29
  120. package/dist/esm/src/Snap.d.ts +1 -2
  121. package/dist/esm/src/Snap.d.ts.map +1 -1
  122. package/dist/esm/src/Snap.js +2 -72
  123. package/dist/esm/src/Templates/SnapTemplates.d.ts +33 -21
  124. package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
  125. package/dist/esm/src/Templates/SnapTemplates.js +21 -105
  126. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +7 -43
  127. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  128. package/dist/esm/src/Templates/Stores/LibraryStore.js +3 -51
  129. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +15 -25
  130. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  131. package/dist/esm/src/Templates/Stores/TemplateStore.js +34 -11
  132. package/dist/esm/src/Templates/Stores/ThemeStore.d.ts +5 -2
  133. package/dist/esm/src/Templates/Stores/ThemeStore.d.ts.map +1 -1
  134. package/dist/esm/src/Templates/Stores/ThemeStore.js +125 -32
  135. package/dist/esm/src/Templates/Stores/library/currencies/currencies.d.ts +27 -0
  136. package/dist/esm/src/Templates/Stores/library/currencies/currencies.d.ts.map +1 -1
  137. package/dist/esm/src/Templates/Stores/library/currencies/currencies.js +52 -29
  138. package/dist/esm/src/Templates/Stores/library/languages/ar.d.ts.map +1 -1
  139. package/dist/esm/src/Templates/Stores/library/languages/ar.js +0 -474
  140. package/dist/esm/src/Templates/Stores/library/languages/de.d.ts.map +1 -1
  141. package/dist/esm/src/Templates/Stores/library/languages/de.js +0 -474
  142. package/dist/esm/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
  143. package/dist/esm/src/Templates/Stores/library/languages/es.js +0 -479
  144. package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
  145. package/dist/esm/src/Templates/Stores/library/languages/fr.js +0 -479
  146. package/dist/esm/src/Templates/Stores/library/languages/hi.d.ts.map +1 -1
  147. package/dist/esm/src/Templates/Stores/library/languages/hi.js +0 -474
  148. package/dist/esm/src/Templates/Stores/library/languages/it.d.ts.map +1 -1
  149. package/dist/esm/src/Templates/Stores/library/languages/it.js +0 -474
  150. package/dist/esm/src/Templates/Stores/library/languages/ja.d.ts.map +1 -1
  151. package/dist/esm/src/Templates/Stores/library/languages/ja.js +0 -474
  152. package/dist/esm/src/Templates/Stores/library/languages/ko.d.ts.map +1 -1
  153. package/dist/esm/src/Templates/Stores/library/languages/ko.js +0 -474
  154. package/dist/esm/src/Templates/Stores/library/languages/nl.d.ts.map +1 -1
  155. package/dist/esm/src/Templates/Stores/library/languages/nl.js +0 -474
  156. package/dist/esm/src/Templates/Stores/library/languages/pt.d.ts.map +1 -1
  157. package/dist/esm/src/Templates/Stores/library/languages/pt.js +0 -474
  158. package/dist/esm/src/Templates/Stores/library/languages/ru.d.ts.map +1 -1
  159. package/dist/esm/src/Templates/Stores/library/languages/ru.js +0 -474
  160. package/dist/esm/src/Templates/Stores/library/languages/tr.d.ts.map +1 -1
  161. package/dist/esm/src/Templates/Stores/library/languages/tr.js +0 -474
  162. package/dist/esm/src/Templates/Stores/library/languages/vi.d.ts.map +1 -1
  163. package/dist/esm/src/Templates/Stores/library/languages/vi.js +0 -474
  164. package/dist/esm/src/Templates/Stores/library/languages/zh.d.ts.map +1 -1
  165. package/dist/esm/src/Templates/Stores/library/languages/zh.js +0 -474
  166. package/dist/esm/src/Templates/Stores/library/plugins/shopify/pluginCurrency.d.ts +2 -0
  167. package/dist/esm/src/Templates/Stores/library/plugins/shopify/pluginCurrency.d.ts.map +1 -0
  168. package/dist/esm/src/Templates/Stores/library/plugins/shopify/pluginCurrency.js +1 -0
  169. package/dist/esm/src/create/index.d.ts +0 -1
  170. package/dist/esm/src/create/index.d.ts.map +1 -1
  171. package/dist/esm/src/create/index.js +0 -1
  172. package/dist/esm/src/setupEvents.d.ts +0 -13
  173. package/dist/esm/src/setupEvents.d.ts.map +1 -1
  174. package/dist/esm/src/setupEvents.js +0 -44
  175. package/dist/esm/src/types.d.ts +3 -13
  176. package/dist/esm/src/types.d.ts.map +1 -1
  177. package/dist/esm/src/utils/index.d.ts +0 -1
  178. package/dist/esm/src/utils/index.d.ts.map +1 -1
  179. package/dist/esm/src/utils/index.js +0 -1
  180. package/eslint/src/validate-config.cjs +520 -0
  181. package/package.json +13 -15
  182. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -99
  183. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -17
  184. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +0 -221
  185. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.js +0 -17
  186. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -209
  187. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -17
  188. package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +0 -258
  189. package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.js +0 -17
  190. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +0 -282
  191. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.js +0 -17
  192. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -173
  193. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -17
  194. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +0 -577
  195. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.js +0 -17
  196. package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.js +0 -252
  197. package/dist/cjs/components/src/components/Molecules/ChatResult/index.js +0 -17
  198. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +0 -113
  199. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.js +0 -17
  200. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +0 -107
  201. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.js +0 -17
  202. package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +0 -621
  203. package/dist/cjs/components/src/components/Organisms/Chat/Chat.lang.js +0 -105
  204. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatAttachments.js +0 -104
  205. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +0 -161
  206. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComposer.js +0 -166
  207. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +0 -369
  208. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatHistory.js +0 -130
  209. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatMessages.js +0 -218
  210. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +0 -123
  211. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSideChat.js +0 -173
  212. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +0 -149
  213. package/dist/cjs/components/src/components/Organisms/Chat/components/chatAccentTheme.js +0 -60
  214. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +0 -66
  215. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.js +0 -96
  216. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +0 -113
  217. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +0 -135
  218. package/dist/cjs/components/src/components/Organisms/Chat/index.js +0 -18
  219. package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.js +0 -94
  220. package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.lang.js +0 -11
  221. package/dist/cjs/components/src/components/Organisms/ChatButton/index.js +0 -18
  222. package/dist/cjs/components/src/components/Templates/Chat/Chat.js +0 -47
  223. package/dist/cjs/components/src/components/Templates/Chat/index.js +0 -17
  224. package/dist/cjs/components/src/components/Templates/ChatButton/ChatButton.js +0 -47
  225. package/dist/cjs/components/src/components/Templates/ChatButton/index.js +0 -17
  226. package/dist/cjs/components/src/themes/base/components/templates/chat.js +0 -6
  227. package/dist/cjs/components/src/themes/base/components/templates/chatButton.js +0 -6
  228. package/dist/cjs/components/src/themes/bocachica/components/templates/chat.js +0 -6
  229. package/dist/cjs/components/src/themes/bocachica/components/templates/chatButton.js +0 -6
  230. package/dist/cjs/components/src/themes/pike/components/templates/chat.js +0 -6
  231. package/dist/cjs/components/src/themes/pike/components/templates/chatButton.js +0 -6
  232. package/dist/cjs/components/src/themes/snapnco/components/templates/chat.js +0 -6
  233. package/dist/cjs/components/src/themes/snapnco/components/templates/chatButton.js +0 -6
  234. package/dist/cjs/components/src/themes/snappy/components/templates/chat.js +0 -6
  235. package/dist/cjs/components/src/themes/snappy/components/templates/chatButton.js +0 -6
  236. package/dist/cjs/components/src/themes/themeComponents/chat.js +0 -14
  237. package/dist/cjs/components/src/themes/themeComponents/chatButton.js +0 -9
  238. package/dist/cjs/src/Templates/Stores/library/components/Chat.js +0 -5
  239. package/dist/cjs/src/Templates/Stores/library/components/ChatButton.js +0 -5
  240. package/dist/cjs/src/create/createChatController.js +0 -30
  241. package/dist/cjs/src/utils/applyChatTargetInject.js +0 -25
  242. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +0 -17
  243. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +0 -1
  244. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -92
  245. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +0 -2
  246. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +0 -1
  247. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -1
  248. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts +0 -30
  249. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +0 -1
  250. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +0 -215
  251. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +0 -2
  252. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +0 -1
  253. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.js +0 -1
  254. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +0 -19
  255. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +0 -1
  256. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -203
  257. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +0 -2
  258. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +0 -1
  259. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -1
  260. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +0 -36
  261. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +0 -1
  262. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +0 -252
  263. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts +0 -2
  264. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts.map +0 -1
  265. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.js +0 -1
  266. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +0 -38
  267. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +0 -1
  268. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +0 -276
  269. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts +0 -2
  270. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +0 -1
  271. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.js +0 -1
  272. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +0 -19
  273. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +0 -1
  274. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -167
  275. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +0 -2
  276. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +0 -1
  277. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -1
  278. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +0 -38
  279. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +0 -1
  280. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +0 -571
  281. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +0 -2
  282. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +0 -1
  283. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.js +0 -1
  284. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts +0 -35
  285. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +0 -1
  286. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.js +0 -246
  287. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts +0 -2
  288. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts.map +0 -1
  289. package/dist/esm/components/src/components/Molecules/ChatResult/index.js +0 -1
  290. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +0 -24
  291. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +0 -1
  292. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +0 -107
  293. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +0 -2
  294. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +0 -1
  295. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.js +0 -1
  296. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +0 -16
  297. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +0 -1
  298. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +0 -101
  299. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +0 -2
  300. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +0 -1
  301. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.js +0 -1
  302. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts +0 -41
  303. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +0 -1
  304. package/dist/esm/components/src/components/Organisms/Chat/Chat.js +0 -615
  305. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts +0 -76
  306. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts.map +0 -1
  307. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.js +0 -100
  308. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts +0 -26
  309. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts.map +0 -1
  310. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.js +0 -98
  311. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts +0 -13
  312. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts.map +0 -1
  313. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +0 -155
  314. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts +0 -19
  315. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts.map +0 -1
  316. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.js +0 -160
  317. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts +0 -18
  318. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts.map +0 -1
  319. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +0 -363
  320. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts +0 -11
  321. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts.map +0 -1
  322. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.js +0 -124
  323. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts +0 -30
  324. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts.map +0 -1
  325. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.js +0 -212
  326. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts +0 -13
  327. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts.map +0 -1
  328. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +0 -117
  329. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts +0 -19
  330. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts.map +0 -1
  331. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.js +0 -167
  332. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts +0 -14
  333. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts.map +0 -1
  334. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +0 -143
  335. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts +0 -15
  336. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts.map +0 -1
  337. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.js +0 -56
  338. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +0 -32
  339. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +0 -1
  340. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +0 -62
  341. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +0 -40
  342. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +0 -1
  343. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.js +0 -92
  344. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +0 -43
  345. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +0 -1
  346. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +0 -109
  347. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts +0 -26
  348. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts.map +0 -1
  349. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +0 -131
  350. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +0 -3
  351. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts.map +0 -1
  352. package/dist/esm/components/src/components/Organisms/Chat/index.js +0 -2
  353. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts +0 -18
  354. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts.map +0 -1
  355. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.js +0 -88
  356. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts +0 -7
  357. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts.map +0 -1
  358. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.js +0 -8
  359. package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts +0 -3
  360. package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts.map +0 -1
  361. package/dist/esm/components/src/components/Organisms/ChatButton/index.js +0 -2
  362. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts +0 -12
  363. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts.map +0 -1
  364. package/dist/esm/components/src/components/Templates/Chat/Chat.js +0 -41
  365. package/dist/esm/components/src/components/Templates/Chat/index.d.ts +0 -2
  366. package/dist/esm/components/src/components/Templates/Chat/index.d.ts.map +0 -1
  367. package/dist/esm/components/src/components/Templates/Chat/index.js +0 -1
  368. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts +0 -13
  369. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts.map +0 -1
  370. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.js +0 -41
  371. package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts +0 -2
  372. package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts.map +0 -1
  373. package/dist/esm/components/src/components/Templates/ChatButton/index.js +0 -1
  374. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts +0 -4
  375. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts.map +0 -1
  376. package/dist/esm/components/src/themes/base/components/templates/chat.js +0 -3
  377. package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts +0 -4
  378. package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts.map +0 -1
  379. package/dist/esm/components/src/themes/base/components/templates/chatButton.js +0 -3
  380. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts +0 -4
  381. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts.map +0 -1
  382. package/dist/esm/components/src/themes/bocachica/components/templates/chat.js +0 -3
  383. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts +0 -4
  384. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts.map +0 -1
  385. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.js +0 -3
  386. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts +0 -4
  387. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts.map +0 -1
  388. package/dist/esm/components/src/themes/pike/components/templates/chat.js +0 -3
  389. package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts +0 -4
  390. package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts.map +0 -1
  391. package/dist/esm/components/src/themes/pike/components/templates/chatButton.js +0 -3
  392. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts +0 -4
  393. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts.map +0 -1
  394. package/dist/esm/components/src/themes/snapnco/components/templates/chat.js +0 -3
  395. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts +0 -4
  396. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts.map +0 -1
  397. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.js +0 -3
  398. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts +0 -4
  399. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts.map +0 -1
  400. package/dist/esm/components/src/themes/snappy/components/templates/chat.js +0 -3
  401. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts +0 -4
  402. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts.map +0 -1
  403. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.js +0 -3
  404. package/dist/esm/components/src/themes/themeComponents/chat.d.ts +0 -4
  405. package/dist/esm/components/src/themes/themeComponents/chat.d.ts.map +0 -1
  406. package/dist/esm/components/src/themes/themeComponents/chat.js +0 -11
  407. package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts +0 -4
  408. package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts.map +0 -1
  409. package/dist/esm/components/src/themes/themeComponents/chatButton.js +0 -6
  410. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts +0 -2
  411. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts.map +0 -1
  412. package/dist/esm/src/Templates/Stores/library/components/Chat.js +0 -1
  413. package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts +0 -2
  414. package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts.map +0 -1
  415. package/dist/esm/src/Templates/Stores/library/components/ChatButton.js +0 -1
  416. package/dist/esm/src/create/createChatController.d.ts +0 -5
  417. package/dist/esm/src/create/createChatController.d.ts.map +0 -1
  418. package/dist/esm/src/create/createChatController.js +0 -28
  419. package/dist/esm/src/utils/applyChatTargetInject.d.ts +0 -3
  420. package/dist/esm/src/utils/applyChatTargetInject.d.ts.map +0 -1
  421. package/dist/esm/src/utils/applyChatTargetInject.js +0 -22
@@ -1,149 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ChatTopicDrift = void 0;
7
- const jsx_runtime_1 = require("@emotion/react/jsx-runtime");
8
- const react_1 = require("@emotion/react");
9
- const classnames_1 = __importDefault(require("classnames"));
10
- const deepmerge_1 = __importDefault(require("deepmerge"));
11
- const mobx_react_lite_1 = require("mobx-react-lite");
12
- const providers_1 = require("../../../../providers");
13
- const utilities_1 = require("../../../../utilities");
14
- const hooks_1 = require("../../../../hooks");
15
- const useA11y_1 = require("../../../../hooks/useA11y");
16
- const Button_1 = require("../../../Atoms/Button");
17
- const Icon_1 = require("../../../Atoms/Icon");
18
- const Chat_lang_1 = require("../Chat.lang");
19
- const defaultStyles = ({ primaryColorBg, primaryColorFg }) => {
20
- const colorPrimary = primaryColorBg;
21
- const colorPrimaryText = primaryColorFg;
22
- return (0, react_1.css)({
23
- display: 'flex',
24
- alignItems: 'center',
25
- gap: '12px',
26
- padding: '12px 16px',
27
- border: `1px solid ${new utilities_1.Colour(colorPrimary).mixWhite(0.6)}`,
28
- borderRadius: '8px',
29
- backgroundColor: '#fff',
30
- '.ss__chat__topic-drift__icon--info': {
31
- flex: '0 0 auto',
32
- fill: colorPrimary,
33
- stroke: colorPrimary,
34
- svg: {
35
- fill: colorPrimary,
36
- stroke: colorPrimary,
37
- },
38
- },
39
- '.ss__chat__topic-drift__text': {
40
- flex: '1 1 0%',
41
- display: 'flex',
42
- flexDirection: 'column',
43
- gap: '2px',
44
- 'span:first-of-type': {
45
- fontWeight: 'bold',
46
- color: colorPrimary,
47
- fontSize: '14px',
48
- },
49
- 'span:last-of-type': {
50
- color: '#6A7282',
51
- fontSize: '13px',
52
- },
53
- },
54
- '.ss__chat__topic-drift__button': {
55
- flex: '0 0 auto',
56
- backgroundColor: colorPrimary,
57
- color: colorPrimaryText,
58
- borderRadius: '6px',
59
- padding: '8px 14px',
60
- fontSize: '13px',
61
- fontWeight: 500,
62
- cursor: 'pointer',
63
- whiteSpace: 'nowrap',
64
- '&:not(.ss__button--disabled):hover': {
65
- background: new utilities_1.Colour(colorPrimary).mixBlack(),
66
- },
67
- },
68
- '.ss__chat__topic-drift__icon--close': {
69
- flex: '0 0 auto',
70
- cursor: 'pointer',
71
- fill: '#6A7282',
72
- stroke: '#6A7282',
73
- svg: {
74
- fill: '#6A7282',
75
- stroke: '#6A7282',
76
- },
77
- },
78
- });
79
- };
80
- exports.ChatTopicDrift = (0, mobx_react_lite_1.observer)((properties) => {
81
- const globalTheme = (0, providers_1.useTheme)();
82
- const globalTreePath = (0, providers_1.useTreePath)();
83
- const defaultProps = {
84
- variant: 'drift',
85
- treePath: globalTreePath,
86
- };
87
- const props = (0, utilities_1.mergeProps)('chatTopicDrift', globalTheme, defaultProps, properties);
88
- const { className, internalClassName, controller, variant } = props;
89
- const { store } = controller;
90
- const lang = (0, deepmerge_1.default)(Chat_lang_1.chatDefaultLang, props.lang || {});
91
- const mergedLang = (0, hooks_1.useLang)({
92
- highVolumeMessage: lang.highVolumeMessage,
93
- highVolumeSubMessage: lang.highVolumeSubMessage,
94
- newSessionButton: lang.newSessionButton,
95
- topicDriftScopeMessage: lang.topicDriftScopeMessage,
96
- topicDriftScopeSubMessage: lang.topicDriftScopeSubMessage,
97
- topicDriftMessage: lang.topicDriftMessage,
98
- topicDriftSubMessage: lang.topicDriftSubMessage,
99
- }, { controller }, { activeBreakpoint: globalTheme?.activeBreakpoint });
100
- const styling = (0, utilities_1.mergeStyles)(props, defaultStyles);
101
- if (variant === 'sessionLimit') {
102
- if (!store.currentChat?.sessionLimitReached)
103
- return null;
104
- return ((0, jsx_runtime_1.jsx)(providers_1.CacheProvider, { children: (0, jsx_runtime_1.jsxs)("div", { ...styling, className: (0, classnames_1.default)('ss__chat__topic-drift', className, internalClassName), children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: "info", size: "18px", className: 'ss__chat__topic-drift__icon--info' }), (0, jsx_runtime_1.jsxs)("div", { className: 'ss__chat__topic-drift__text', children: [(0, jsx_runtime_1.jsx)("span", { ...mergedLang.highVolumeMessage?.all }), (0, jsx_runtime_1.jsx)("span", { ...mergedLang.highVolumeSubMessage?.all })] }), (0, jsx_runtime_1.jsx)(Button_1.Button, { className: 'ss__chat__topic-drift__button', onClick: () => {
105
- controller.store.createChat();
106
- }, children: (0, jsx_runtime_1.jsx)("span", { ...mergedLang.newSessionButton?.all }) })] }) }));
107
- }
108
- const drift = store.currentChat?.topicDrift;
109
- if (!drift)
110
- return null;
111
- // recommendedAction is the prescription; driftType is the diagnosis.
112
- // Hide the banner when the backend says to keep flowing, or when no drift was detected.
113
- if (drift.recommendedAction === 'CONTINUE' || drift.driftType === 'NO_DRIFT')
114
- return null;
115
- const isScopeRedirect = drift.recommendedAction === 'SCOPE_REDIRECT';
116
- return ((0, jsx_runtime_1.jsx)(providers_1.CacheProvider, { children: (0, jsx_runtime_1.jsxs)("div", { ...styling, className: (0, classnames_1.default)('ss__chat__topic-drift', className, internalClassName), children: [(0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: "info", size: "18px", className: 'ss__chat__topic-drift__icon--info' }), (0, jsx_runtime_1.jsxs)("div", { className: 'ss__chat__topic-drift__text', children: [(0, jsx_runtime_1.jsx)("span", { ...(isScopeRedirect ? mergedLang.topicDriftScopeMessage?.all : mergedLang.topicDriftMessage?.all) }), (0, jsx_runtime_1.jsx)("span", { ...(isScopeRedirect ? mergedLang.topicDriftScopeSubMessage?.all : mergedLang.topicDriftSubMessage?.all) })] }), !isScopeRedirect && ((0, jsx_runtime_1.jsx)(Button_1.Button, { className: 'ss__chat__topic-drift__button', onClick: () => {
117
- // Capture image attachments from the current chat before handleTopicDrift /
118
- // createChat tear down the conversation — an imageSearch that drifted needs
119
- // the same image attached to the carried-over message in the new session,
120
- // otherwise params would fall back to a `general` request without the image.
121
- const previousImageAttachments = (store.currentChat?.attachments.attached || [])
122
- .filter((item) => item.type === 'image' && item.state !== 'error')
123
- .map((item) => {
124
- const img = item;
125
- return {
126
- type: 'image',
127
- base64: img.base64,
128
- fileName: img.fileName,
129
- imageId: img.imageId,
130
- imageUrl: img.imageUrl,
131
- thumbnailUrl: img.thumbnailUrl,
132
- // Already uploaded — skip the 'loading' default state.
133
- state: 'attached',
134
- };
135
- });
136
- const messageText = store.currentChat?.handleTopicDrift();
137
- if (messageText) {
138
- controller.store.createChat();
139
- previousImageAttachments.forEach((cfg) => {
140
- controller.store.currentChat?.attachments.add(cfg);
141
- });
142
- // partial override — the params getter decides the requestType (e.g. imageSearch
143
- // when an image is re-attached), so only the message is overridden here
144
- controller.search({ data: { message: messageText } });
145
- }
146
- }, children: (0, jsx_runtime_1.jsx)("span", { ...mergedLang.newSessionButton?.all }) })), (0, jsx_runtime_1.jsx)("span", { role: "button", ref: (e) => (0, useA11y_1.useA11y)(e), "aria-label": (0, Chat_lang_1.langAttrOf)(lang.topicDriftDismissButton, 'aria-label'), onClick: () => {
147
- store.currentChat?.dismissTopicDrift();
148
- }, children: (0, jsx_runtime_1.jsx)(Icon_1.Icon, { icon: "close-thin", size: "14px", className: 'ss__chat__topic-drift__icon--close' }) })] }) }));
149
- });
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.chatAccentThemeComponents = void 0;
4
- const utilities_1 = require("../../../../utilities");
5
- /**
6
- * Accent styling for buttons living inside child components (ChatResult's cart /
7
- * inquire icons and ChatProductQueryMessage's action buttons) — injected through
8
- * the theme so each child applies it via its own style pipeline instead of the
9
- * organism reaching in with `!important` overrides.
10
- */
11
- const chatAccentThemeComponents = ({ primaryAccentColorBg, primaryAccentColorFg, secondaryAccentColorBg, secondaryAccentColorFg, }) => {
12
- return {
13
- chatResult: {
14
- style: {
15
- '.ss__chat-result__image__icons': {
16
- '.ss__button.ss__chat-result__image__icons__icon--cart': {
17
- backgroundColor: primaryAccentColorBg,
18
- svg: {
19
- fill: primaryAccentColorFg,
20
- stroke: primaryAccentColorFg,
21
- },
22
- },
23
- '.ss__button.ss__chat-result__image__icons__icon--inquire': {
24
- backgroundColor: secondaryAccentColorBg,
25
- svg: {
26
- fill: secondaryAccentColorFg,
27
- stroke: secondaryAccentColorFg,
28
- },
29
- },
30
- },
31
- },
32
- },
33
- chatProductQueryMessage: {
34
- style: {
35
- '.ss__chat-product-query-message__header__product__actions': {
36
- '.ss__chat-product-query-message__header__product__actions__add-to-cart .ss__button': {
37
- background: primaryAccentColorBg,
38
- color: primaryAccentColorFg,
39
- svg: {
40
- fill: primaryAccentColorFg,
41
- stroke: primaryAccentColorFg,
42
- },
43
- '&:not(.ss__button--disabled):hover': {
44
- background: new utilities_1.Colour(primaryAccentColorBg).mixBlack(),
45
- },
46
- },
47
- '.ss__chat-product-query-message__header__product__actions__show-similar .ss__button, .ss__chat-product-query-message__header__product__actions__discuss-product .ss__button': {
48
- background: secondaryAccentColorBg,
49
- color: secondaryAccentColorFg,
50
- border: `1px solid ${secondaryAccentColorFg}`,
51
- '&:not(.ss__button--disabled):hover': {
52
- background: new utilities_1.Colour(secondaryAccentColorBg).mixBlack(),
53
- },
54
- },
55
- },
56
- },
57
- },
58
- };
59
- };
60
- exports.chatAccentThemeComponents = chatAccentThemeComponents;
@@ -1,66 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useChatFileUpload = void 0;
4
- const hooks_1 = require("preact/hooks");
5
- const hasFiles = (e) => Array.from(e.dataTransfer?.types || []).includes('Files');
6
- /**
7
- * Wires drag-and-drop image upload onto the chat footer plus a ref for the
8
- * hidden file input. `dragenter` / `dragleave` fire on every child crossing,
9
- * so a counter is kept to know when the pointer has truly left the footer.
10
- */
11
- const useChatFileUpload = ({ enabled, onUpload }) => {
12
- const fileInputRef = (0, hooks_1.useRef)(null);
13
- const [isDraggingFile, setIsDraggingFile] = (0, hooks_1.useState)(false);
14
- const dragCounterRef = (0, hooks_1.useRef)(0);
15
- // Reset drag state when uploads become disabled mid-drag (e.g. loading starts)
16
- // so the drop overlay cannot get stuck on screen.
17
- (0, hooks_1.useEffect)(() => {
18
- if (!enabled) {
19
- dragCounterRef.current = 0;
20
- setIsDraggingFile(false);
21
- }
22
- }, [enabled]);
23
- const onDragEnter = (e) => {
24
- if (!enabled || !hasFiles(e))
25
- return;
26
- e.preventDefault();
27
- dragCounterRef.current += 1;
28
- setIsDraggingFile(true);
29
- };
30
- const onDragOver = (e) => {
31
- if (!enabled || !hasFiles(e))
32
- return;
33
- // Required to allow the drop event to fire
34
- e.preventDefault();
35
- if (e.dataTransfer)
36
- e.dataTransfer.dropEffect = 'copy';
37
- };
38
- const onDragLeave = (e) => {
39
- if (!enabled || !hasFiles(e))
40
- return;
41
- dragCounterRef.current = Math.max(0, dragCounterRef.current - 1);
42
- if (dragCounterRef.current === 0)
43
- setIsDraggingFile(false);
44
- };
45
- const onDrop = async (e) => {
46
- if (!enabled || !hasFiles(e))
47
- return;
48
- e.preventDefault();
49
- dragCounterRef.current = 0;
50
- setIsDraggingFile(false);
51
- const dropped = Array.from(e.dataTransfer?.files || []);
52
- const firstImage = dropped.find((f) => f.type.startsWith('image/'));
53
- if (!firstImage)
54
- return;
55
- // Reconstruct a FileList — consumers (e.g. controller.upload) expect FileList | null
56
- const dt = new DataTransfer();
57
- dt.items.add(firstImage);
58
- await onUpload(dt.files);
59
- };
60
- return {
61
- fileInputRef,
62
- isDraggingFile,
63
- dragHandlers: { onDragEnter, onDragOver, onDragLeave, onDrop },
64
- };
65
- };
66
- exports.useChatFileUpload = useChatFileUpload;
@@ -1,96 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useChatGestures = void 0;
4
- const hooks_1 = require("preact/hooks");
5
- /**
6
- * Drag-down-to-dismiss gesture for the mobile secondary chat panel.
7
- *
8
- * Tracks vertical touch movement and applies a translateY offset until the user releases.
9
- * If the user passes a distance or velocity threshold the panel animates the rest of the way
10
- * out and `onDismiss` fires; otherwise it snaps back to zero.
11
- */
12
- const useChatGestures = ({ panelRef, shouldShowSideChat, activeMessageId, onDismiss }) => {
13
- const swipeStartY = (0, hooks_1.useRef)(0);
14
- const swipeStartTime = (0, hooks_1.useRef)(0);
15
- const swipeActive = (0, hooks_1.useRef)(false);
16
- const swipeOffsetRef = (0, hooks_1.useRef)(0);
17
- const animationTimerRef = (0, hooks_1.useRef)(null);
18
- const [swipeOffset, setSwipeOffsetRaw] = (0, hooks_1.useState)(0);
19
- const [swipeAnimating, setSwipeAnimating] = (0, hooks_1.useState)(false);
20
- const updateSwipeOffset = (value) => {
21
- swipeOffsetRef.current = value;
22
- setSwipeOffsetRaw(value);
23
- };
24
- // Reset swipe state when secondary panel opens/closes or active message changes
25
- (0, hooks_1.useEffect)(() => {
26
- updateSwipeOffset(0);
27
- setSwipeAnimating(false);
28
- swipeActive.current = false;
29
- }, [shouldShowSideChat, activeMessageId]);
30
- const onTouchStart = (e) => {
31
- swipeStartY.current = e.touches[0].clientY;
32
- swipeStartTime.current = Date.now();
33
- swipeActive.current = false; // only activate after dead-zone threshold
34
- setSwipeAnimating(false);
35
- };
36
- const onTouchMove = (e) => {
37
- const diff = e.touches[0].clientY - swipeStartY.current;
38
- // Require a minimum drag distance before activating the swipe,
39
- // so taps on buttons (e.g. close) still fire their click events.
40
- if (!swipeActive.current) {
41
- if (Math.abs(diff) < 8)
42
- return; // still within dead-zone
43
- swipeActive.current = true;
44
- }
45
- if (diff > 0) {
46
- e.preventDefault();
47
- updateSwipeOffset(diff);
48
- }
49
- else {
50
- updateSwipeOffset(0);
51
- }
52
- };
53
- const onTouchEnd = () => {
54
- if (!swipeActive.current)
55
- return;
56
- swipeActive.current = false;
57
- const offset = swipeOffsetRef.current;
58
- const height = panelRef.current?.offsetHeight || 400;
59
- const elapsed = Date.now() - swipeStartTime.current;
60
- const velocity = offset / (elapsed || 1); // px per ms
61
- // Dismiss if dragged past 25% threshold OR a quick flick (>0.5 px/ms with >50px travel)
62
- const shouldDismiss = offset > height * 0.25 || (velocity > 0.5 && offset > 50);
63
- if (shouldDismiss) {
64
- // Animate out then dismiss
65
- setSwipeAnimating(true);
66
- updateSwipeOffset(height);
67
- if (animationTimerRef.current)
68
- clearTimeout(animationTimerRef.current);
69
- animationTimerRef.current = setTimeout(() => {
70
- onDismiss();
71
- updateSwipeOffset(0);
72
- setSwipeAnimating(false);
73
- }, 300);
74
- }
75
- else {
76
- // Snap back
77
- setSwipeAnimating(true);
78
- updateSwipeOffset(0);
79
- if (animationTimerRef.current)
80
- clearTimeout(animationTimerRef.current);
81
- animationTimerRef.current = setTimeout(() => setSwipeAnimating(false), 300);
82
- }
83
- };
84
- (0, hooks_1.useEffect)(() => {
85
- return () => {
86
- if (animationTimerRef.current)
87
- clearTimeout(animationTimerRef.current);
88
- };
89
- }, []);
90
- return {
91
- swipeOffset,
92
- swipeAnimating,
93
- swipeHandlers: { onTouchStart, onTouchMove, onTouchEnd },
94
- };
95
- };
96
- exports.useChatGestures = useChatGestures;
@@ -1,113 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useChatOverflow = void 0;
4
- const hooks_1 = require("preact/hooks");
5
- /**
6
- * Manages the auto-scroll, "new message" indicator, and overflow detection for the
7
- * chat message list. Owns all scroll listeners and ResizeObservers so the host
8
- * component just consumes the derived state.
9
- */
10
- const useChatOverflow = ({ messagesContainerRef, headerRef, open, loading, visibleChatLength, lastVisibleMessage, }) => {
11
- const [showNewMessages, setShowNewMessages] = (0, hooks_1.useState)(false);
12
- const [messagesOverflow, setMessagesOverflow] = (0, hooks_1.useState)(false);
13
- const isNearBottomRef = (0, hooks_1.useRef)(true);
14
- const scrollToBottom = () => {
15
- // Scroll the messages container directly (instead of scrollIntoView on the
16
- // bottom anchor) so the browser never walks up the ancestor chain. On small
17
- // viewports a smooth scrollIntoView could otherwise animate the document /
18
- // visual viewport and visually push the fixed-position chat off-screen.
19
- const container = messagesContainerRef.current;
20
- if (container) {
21
- container.scrollTo({ top: container.scrollHeight, behavior: 'smooth' });
22
- }
23
- };
24
- // Conditional scroll: only scrolls if the user is already near the bottom.
25
- const scrollToBottomIfNear = () => {
26
- if (isNearBottomRef.current) {
27
- scrollToBottom();
28
- }
29
- };
30
- // Scroll to bottom when chat opens
31
- (0, hooks_1.useEffect)(() => {
32
- if (open) {
33
- scrollToBottom();
34
- setShowNewMessages(false);
35
- isNearBottomRef.current = true;
36
- }
37
- }, [open]);
38
- // Handle new messages — auto-scroll for user messages, show popup for response messages when scrolled up
39
- (0, hooks_1.useEffect)(() => {
40
- if (!open || !lastVisibleMessage)
41
- return;
42
- if (lastVisibleMessage.messageType === 'user') {
43
- scrollToBottom();
44
- setShowNewMessages(false);
45
- }
46
- else if (isNearBottomRef.current) {
47
- scrollToBottom();
48
- setShowNewMessages(false);
49
- }
50
- else {
51
- setShowNewMessages(true);
52
- }
53
- }, [visibleChatLength]);
54
- // Scroll to show loading indicator when user sends a message
55
- (0, hooks_1.useEffect)(() => {
56
- if (open && loading) {
57
- scrollToBottom();
58
- }
59
- }, [loading]);
60
- // Track scroll position to dismiss the "New messages" popup when user scrolls to bottom
61
- (0, hooks_1.useEffect)(() => {
62
- const container = messagesContainerRef.current;
63
- if (!container)
64
- return;
65
- const handleScroll = () => {
66
- const threshold = 100;
67
- const isNearBottom = container.scrollHeight - container.scrollTop - container.clientHeight < threshold;
68
- isNearBottomRef.current = isNearBottom;
69
- if (isNearBottom) {
70
- setShowNewMessages(false);
71
- }
72
- };
73
- container.addEventListener('scroll', handleScroll);
74
- return () => container.removeEventListener('scroll', handleScroll);
75
- }, [open]);
76
- // Track whether the messages container is overflowing so the comparisons header
77
- // can switch between in-flow (short conversations — top content stays reachable)
78
- // and overlay (overflowing — avoid layout shift when toggling the tray).
79
- // Hysteresis: when already in overlay, only return to in-flow if the content
80
- // would still fit *with* the header re-inserted — otherwise the two states
81
- // fight each other and the layout flickers.
82
- (0, hooks_1.useEffect)(() => {
83
- const container = messagesContainerRef.current;
84
- if (!container || typeof ResizeObserver === 'undefined')
85
- return;
86
- const update = () => {
87
- setMessagesOverflow((prev) => {
88
- const headerHeight = headerRef.current?.offsetHeight || 0;
89
- if (prev) {
90
- // Currently overlay: header isn't taking flow space. Only switch
91
- // back to in-flow if the content would fit with the header added.
92
- return container.scrollHeight > container.clientHeight - headerHeight + 1;
93
- }
94
- // Currently in-flow: header already takes space — straightforward check.
95
- return container.scrollHeight > container.clientHeight + 1;
96
- });
97
- };
98
- update();
99
- const observer = new ResizeObserver(update);
100
- observer.observe(container);
101
- if (headerRef.current)
102
- observer.observe(headerRef.current);
103
- return () => observer.disconnect();
104
- }, [open, visibleChatLength]);
105
- return {
106
- showNewMessages,
107
- setShowNewMessages,
108
- messagesOverflow,
109
- scrollToBottom,
110
- scrollToBottomIfNear,
111
- };
112
- };
113
- exports.useChatOverflow = useChatOverflow;
@@ -1,135 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useChatScrollLock = void 0;
4
- const hooks_1 = require("preact/hooks");
5
- /**
6
- * Prevents the background page from scrolling while the chat is open.
7
- *
8
- * Locks body overflow for wheel/keyboard scrolling, and installs a `touchmove`
9
- * handler for touch devices. iOS Safari (real iPad/iPhone) rubber-band-scrolls
10
- * the body when a touchmove inside `.ss__chat__messages` reaches the top/bottom —
11
- * and `overscroll-behavior: contain` is ignored there.
12
- *
13
- * We don't reposition the body (locking via `position: fixed` on `<body>` leaves
14
- * iPad Safari in a stuck viewport state where the page can't scroll after the
15
- * lock is released). Instead the `touchmove` handler:
16
- * - allows the touchmove if it's inside a scrollable region of the chat
17
- * and that region isn't at its scroll edge in the swipe direction;
18
- * - calls `preventDefault()` otherwise — which is what blocks both
19
- * background scrolling and iOS rubber-band overscroll.
20
- * Cleanup just removes the listeners, so nothing can leak into the page.
21
- */
22
- const useChatScrollLock = ({ open, chatRef }) => {
23
- // Lock body scroll while chat is open so touch/wheel scrolls don't leak to the page behind
24
- (0, hooks_1.useEffect)(() => {
25
- if (!open)
26
- return;
27
- const body = document.body;
28
- const previousOverflow = body.style.overflow;
29
- const previousOverscroll = body.style.overscrollBehavior;
30
- body.style.overflow = 'hidden';
31
- body.style.overscrollBehavior = 'contain';
32
- return () => {
33
- body.style.overflow = previousOverflow;
34
- body.style.overscrollBehavior = previousOverscroll;
35
- };
36
- }, [open]);
37
- (0, hooks_1.useEffect)(() => {
38
- if (!open)
39
- return;
40
- if (typeof document === 'undefined')
41
- return;
42
- let startX = 0;
43
- let startY = 0;
44
- let scrollEl = null;
45
- // Walk up from the touch target to find the first ancestor inside the chat
46
- // that is actually scrollable in either axis. Stop at the chat root so we
47
- // never consider elements outside the chat.
48
- const findScrollableInChat = (start) => {
49
- const chatRoot = chatRef.current;
50
- if (!chatRoot)
51
- return null;
52
- let el = start;
53
- while (el && chatRoot.contains(el)) {
54
- const style = getComputedStyle(el);
55
- const scrollableY = (style.overflowY === 'auto' || style.overflowY === 'scroll') && el.scrollHeight > el.clientHeight;
56
- const scrollableX = (style.overflowX === 'auto' || style.overflowX === 'scroll') && el.scrollWidth > el.clientWidth;
57
- if (scrollableY || scrollableX) {
58
- return el;
59
- }
60
- if (el === chatRoot)
61
- break;
62
- el = el.parentElement;
63
- }
64
- return null;
65
- };
66
- const onTouchStart = (e) => {
67
- if (!e.touches[0])
68
- return;
69
- startX = e.touches[0].clientX;
70
- startY = e.touches[0].clientY;
71
- scrollEl = findScrollableInChat(e.target);
72
- };
73
- const onTouchMove = (e) => {
74
- const target = e.target;
75
- const chatRoot = chatRef.current;
76
- const inChat = !!(chatRoot && target && chatRoot.contains(target));
77
- // Touches outside the chat shouldn't scroll the background.
78
- if (!inChat) {
79
- if (e.cancelable)
80
- e.preventDefault();
81
- return;
82
- }
83
- // Inside the chat but no scrollable container — block to prevent body scroll.
84
- if (!scrollEl) {
85
- if (e.cancelable)
86
- e.preventDefault();
87
- return;
88
- }
89
- // Inside a scrollable container — only block when at the edge in the
90
- // swipe direction, so internal scrolling continues to work. Detect the
91
- // dominant axis so horizontally-scrollable rows (e.g. the facets row)
92
- // also get to handle their own touch gestures.
93
- const currentX = e.touches[0]?.clientX ?? startX;
94
- const currentY = e.touches[0]?.clientY ?? startY;
95
- const deltaX = currentX - startX;
96
- const deltaY = currentY - startY;
97
- const horizontal = Math.abs(deltaX) > Math.abs(deltaY);
98
- if (horizontal) {
99
- const scrollsX = scrollEl.scrollWidth > scrollEl.clientWidth;
100
- if (!scrollsX) {
101
- if (e.cancelable)
102
- e.preventDefault();
103
- return;
104
- }
105
- const atLeft = scrollEl.scrollLeft <= 0;
106
- const atRight = scrollEl.scrollLeft + scrollEl.clientWidth >= scrollEl.scrollWidth - 1;
107
- if ((atLeft && deltaX > 0) || (atRight && deltaX < 0)) {
108
- if (e.cancelable)
109
- e.preventDefault();
110
- }
111
- }
112
- else {
113
- const scrollsY = scrollEl.scrollHeight > scrollEl.clientHeight;
114
- if (!scrollsY) {
115
- if (e.cancelable)
116
- e.preventDefault();
117
- return;
118
- }
119
- const atTop = scrollEl.scrollTop <= 0;
120
- const atBottom = scrollEl.scrollTop + scrollEl.clientHeight >= scrollEl.scrollHeight - 1;
121
- if ((atTop && deltaY > 0) || (atBottom && deltaY < 0)) {
122
- if (e.cancelable)
123
- e.preventDefault();
124
- }
125
- }
126
- };
127
- document.addEventListener('touchstart', onTouchStart, { passive: true });
128
- document.addEventListener('touchmove', onTouchMove, { passive: false });
129
- return () => {
130
- document.removeEventListener('touchstart', onTouchStart);
131
- document.removeEventListener('touchmove', onTouchMove);
132
- };
133
- }, [open]);
134
- };
135
- exports.useChatScrollLock = useChatScrollLock;
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./Chat"), exports);
18
- __exportStar(require("./Chat.lang"), exports);