@athoscommerce/snap-preact 1.13.3-beta.191 → 1.14.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 (430) 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/Molecules/Filter/Filter.js +1 -1
  4. package/dist/cjs/components/src/components/Molecules/Result/Result.js +4 -51
  5. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +2 -28
  6. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +28 -24
  7. package/dist/cjs/components/src/components/Molecules/Slideshow/Slideshow.js +20 -50
  8. package/dist/cjs/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +44 -21
  9. package/dist/cjs/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +64 -6
  10. package/dist/cjs/components/src/components/Organisms/FilterSummary/FilterSummary.js +19 -8
  11. package/dist/cjs/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +11 -44
  12. package/dist/cjs/components/src/components/Organisms/Results/Results.js +1 -1
  13. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +12 -11
  14. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +6 -8
  15. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +6 -8
  16. package/dist/cjs/components/src/components/Templates/Search/Search.js +1 -1
  17. package/dist/cjs/components/src/index.js +1 -17
  18. package/dist/cjs/components/src/providers/themeComponents.js +0 -20
  19. package/dist/cjs/components/src/themes/base/components/templates/index.js +0 -10
  20. package/dist/cjs/components/src/themes/bocachica/components/templates/index.js +0 -10
  21. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteFixed.js +1 -1
  22. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteModal.js +1 -1
  23. package/dist/cjs/components/src/themes/pike/components/templates/autocompleteSlideout.js +3 -2
  24. package/dist/cjs/components/src/themes/pike/components/templates/index.js +0 -10
  25. package/dist/cjs/components/src/themes/snapnco/components/templates/index.js +0 -10
  26. package/dist/cjs/components/src/themes/snappy/components/templates/index.js +0 -10
  27. package/dist/cjs/components/src/utilities/Colour/Colour.js +0 -41
  28. package/dist/cjs/components/src/utilities/componentArgs.js +1 -1
  29. package/dist/cjs/components/src/utilities/index.js +0 -1
  30. package/dist/cjs/components/src/utilities/snapify.js +0 -27
  31. package/dist/cjs/src/Snap.js +6 -85
  32. package/dist/cjs/src/Templates/SnapTemplates.js +5 -55
  33. package/dist/cjs/src/Templates/Stores/LibraryStore.js +1 -51
  34. package/dist/cjs/src/Templates/Stores/TemplateStore.js +3 -3
  35. package/dist/cjs/src/Templates/Stores/library/languages/ar.js +6 -485
  36. package/dist/cjs/src/Templates/Stores/library/languages/de.js +6 -485
  37. package/dist/cjs/src/Templates/Stores/library/languages/es.js +6 -490
  38. package/dist/cjs/src/Templates/Stores/library/languages/fr.js +6 -490
  39. package/dist/cjs/src/Templates/Stores/library/languages/hi.js +6 -485
  40. package/dist/cjs/src/Templates/Stores/library/languages/it.js +6 -485
  41. package/dist/cjs/src/Templates/Stores/library/languages/ja.js +6 -485
  42. package/dist/cjs/src/Templates/Stores/library/languages/ko.js +6 -485
  43. package/dist/cjs/src/Templates/Stores/library/languages/nl.js +6 -485
  44. package/dist/cjs/src/Templates/Stores/library/languages/pt.js +6 -485
  45. package/dist/cjs/src/Templates/Stores/library/languages/ru.js +6 -485
  46. package/dist/cjs/src/Templates/Stores/library/languages/tr.js +6 -485
  47. package/dist/cjs/src/Templates/Stores/library/languages/vi.js +6 -485
  48. package/dist/cjs/src/Templates/Stores/library/languages/zh.js +6 -485
  49. package/dist/cjs/src/create/index.js +1 -3
  50. package/dist/cjs/src/setupEvents.js +0 -44
  51. package/dist/cjs/src/utils/index.js +1 -3
  52. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +1 -3
  53. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  54. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts +1 -6
  55. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  56. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +12 -57
  57. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +0 -13
  58. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
  59. package/dist/esm/components/src/components/Atoms/Icon/paths.js +0 -13
  60. package/dist/esm/components/src/components/Molecules/Filter/Filter.d.ts.map +1 -1
  61. package/dist/esm/components/src/components/Molecules/Filter/Filter.js +1 -1
  62. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts +2 -2
  63. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.d.ts.map +1 -1
  64. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +3 -7
  65. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  66. package/dist/esm/components/src/components/Molecules/Result/Result.js +4 -51
  67. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +0 -3
  68. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  69. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +2 -28
  70. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  71. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +29 -25
  72. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.d.ts.map +1 -1
  73. package/dist/esm/components/src/components/Molecules/Slideshow/Slideshow.js +20 -50
  74. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts +3 -1
  75. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.d.ts.map +1 -1
  76. package/dist/esm/components/src/components/Organisms/AutocompleteLayout/AutocompleteLayout.js +43 -21
  77. package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.d.ts +1 -0
  78. package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.d.ts.map +1 -1
  79. package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +65 -7
  80. package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts +5 -0
  81. package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.d.ts.map +1 -1
  82. package/dist/esm/components/src/components/Organisms/FilterSummary/FilterSummary.js +19 -8
  83. package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.d.ts +1 -5
  84. package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.d.ts.map +1 -1
  85. package/dist/esm/components/src/components/Organisms/QuickviewLayout/QuickviewLayout.js +11 -44
  86. package/dist/esm/components/src/components/Organisms/Results/Results.js +1 -1
  87. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts +4 -0
  88. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  89. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +13 -12
  90. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts +3 -0
  91. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  92. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +7 -9
  93. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts +3 -0
  94. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  95. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +7 -9
  96. package/dist/esm/components/src/components/Templates/Search/Search.js +2 -2
  97. package/dist/esm/components/src/hooks/index.d.ts +2 -1
  98. package/dist/esm/components/src/hooks/index.d.ts.map +1 -1
  99. package/dist/esm/components/src/index.d.ts +4 -16
  100. package/dist/esm/components/src/index.d.ts.map +1 -1
  101. package/dist/esm/components/src/index.js +1 -15
  102. package/dist/esm/components/src/providers/langComponents.d.ts +0 -20
  103. package/dist/esm/components/src/providers/langComponents.d.ts.map +1 -1
  104. package/dist/esm/components/src/providers/themeComponents.d.ts +1 -203
  105. package/dist/esm/components/src/providers/themeComponents.d.ts.map +1 -1
  106. package/dist/esm/components/src/providers/themeComponents.js +0 -20
  107. package/dist/esm/components/src/providers/withTracking.d.ts +2 -2
  108. package/dist/esm/components/src/providers/withTracking.d.ts.map +1 -1
  109. package/dist/esm/components/src/themes/base/components/templates/index.d.ts.map +1 -1
  110. package/dist/esm/components/src/themes/base/components/templates/index.js +0 -10
  111. package/dist/esm/components/src/themes/bocachica/components/templates/index.d.ts.map +1 -1
  112. package/dist/esm/components/src/themes/bocachica/components/templates/index.js +0 -10
  113. package/dist/esm/components/src/themes/pike/components/templates/autocompleteFixed.js +1 -1
  114. package/dist/esm/components/src/themes/pike/components/templates/autocompleteModal.js +1 -1
  115. package/dist/esm/components/src/themes/pike/components/templates/autocompleteSlideout.d.ts.map +1 -1
  116. package/dist/esm/components/src/themes/pike/components/templates/autocompleteSlideout.js +3 -2
  117. package/dist/esm/components/src/themes/pike/components/templates/index.d.ts.map +1 -1
  118. package/dist/esm/components/src/themes/pike/components/templates/index.js +0 -10
  119. package/dist/esm/components/src/themes/snapnco/components/templates/index.d.ts.map +1 -1
  120. package/dist/esm/components/src/themes/snapnco/components/templates/index.js +0 -10
  121. package/dist/esm/components/src/themes/snappy/components/templates/index.d.ts.map +1 -1
  122. package/dist/esm/components/src/themes/snappy/components/templates/index.js +0 -10
  123. package/dist/esm/components/src/utilities/Colour/Colour.d.ts +0 -15
  124. package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
  125. package/dist/esm/components/src/utilities/Colour/Colour.js +0 -41
  126. package/dist/esm/components/src/utilities/componentArgs.d.ts +1 -3
  127. package/dist/esm/components/src/utilities/componentArgs.d.ts.map +1 -1
  128. package/dist/esm/components/src/utilities/componentArgs.js +1 -1
  129. package/dist/esm/components/src/utilities/index.d.ts +0 -1
  130. package/dist/esm/components/src/utilities/index.d.ts.map +1 -1
  131. package/dist/esm/components/src/utilities/index.js +0 -1
  132. package/dist/esm/components/src/utilities/snapify.d.ts +2 -3
  133. package/dist/esm/components/src/utilities/snapify.d.ts.map +1 -1
  134. package/dist/esm/components/src/utilities/snapify.js +2 -29
  135. package/dist/esm/src/Snap.d.ts +1 -3
  136. package/dist/esm/src/Snap.d.ts.map +1 -1
  137. package/dist/esm/src/Snap.js +7 -86
  138. package/dist/esm/src/Templates/SnapTemplates.d.ts +1 -2
  139. package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
  140. package/dist/esm/src/Templates/SnapTemplates.js +5 -54
  141. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +0 -43
  142. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  143. package/dist/esm/src/Templates/Stores/LibraryStore.js +1 -51
  144. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +5 -19
  145. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  146. package/dist/esm/src/Templates/Stores/TemplateStore.js +3 -3
  147. package/dist/esm/src/Templates/Stores/library/languages/ar.d.ts.map +1 -1
  148. package/dist/esm/src/Templates/Stores/library/languages/ar.js +6 -485
  149. package/dist/esm/src/Templates/Stores/library/languages/de.d.ts.map +1 -1
  150. package/dist/esm/src/Templates/Stores/library/languages/de.js +6 -485
  151. package/dist/esm/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
  152. package/dist/esm/src/Templates/Stores/library/languages/es.js +6 -490
  153. package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
  154. package/dist/esm/src/Templates/Stores/library/languages/fr.js +6 -490
  155. package/dist/esm/src/Templates/Stores/library/languages/hi.d.ts.map +1 -1
  156. package/dist/esm/src/Templates/Stores/library/languages/hi.js +6 -485
  157. package/dist/esm/src/Templates/Stores/library/languages/it.d.ts.map +1 -1
  158. package/dist/esm/src/Templates/Stores/library/languages/it.js +6 -485
  159. package/dist/esm/src/Templates/Stores/library/languages/ja.d.ts.map +1 -1
  160. package/dist/esm/src/Templates/Stores/library/languages/ja.js +6 -485
  161. package/dist/esm/src/Templates/Stores/library/languages/ko.d.ts.map +1 -1
  162. package/dist/esm/src/Templates/Stores/library/languages/ko.js +6 -485
  163. package/dist/esm/src/Templates/Stores/library/languages/nl.d.ts.map +1 -1
  164. package/dist/esm/src/Templates/Stores/library/languages/nl.js +6 -485
  165. package/dist/esm/src/Templates/Stores/library/languages/pt.d.ts.map +1 -1
  166. package/dist/esm/src/Templates/Stores/library/languages/pt.js +6 -485
  167. package/dist/esm/src/Templates/Stores/library/languages/ru.d.ts.map +1 -1
  168. package/dist/esm/src/Templates/Stores/library/languages/ru.js +6 -485
  169. package/dist/esm/src/Templates/Stores/library/languages/tr.d.ts.map +1 -1
  170. package/dist/esm/src/Templates/Stores/library/languages/tr.js +6 -485
  171. package/dist/esm/src/Templates/Stores/library/languages/vi.d.ts.map +1 -1
  172. package/dist/esm/src/Templates/Stores/library/languages/vi.js +6 -485
  173. package/dist/esm/src/Templates/Stores/library/languages/zh.d.ts.map +1 -1
  174. package/dist/esm/src/Templates/Stores/library/languages/zh.js +6 -485
  175. package/dist/esm/src/create/index.d.ts +0 -1
  176. package/dist/esm/src/create/index.d.ts.map +1 -1
  177. package/dist/esm/src/create/index.js +0 -1
  178. package/dist/esm/src/setupEvents.d.ts +0 -13
  179. package/dist/esm/src/setupEvents.d.ts.map +1 -1
  180. package/dist/esm/src/setupEvents.js +0 -44
  181. package/dist/esm/src/types.d.ts +3 -13
  182. package/dist/esm/src/types.d.ts.map +1 -1
  183. package/dist/esm/src/utils/index.d.ts +0 -1
  184. package/dist/esm/src/utils/index.d.ts.map +1 -1
  185. package/dist/esm/src/utils/index.js +0 -1
  186. package/package.json +20 -29
  187. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -99
  188. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -17
  189. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +0 -221
  190. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.js +0 -17
  191. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -211
  192. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -17
  193. package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +0 -259
  194. package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.js +0 -17
  195. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +0 -286
  196. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.js +0 -17
  197. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -174
  198. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -17
  199. package/dist/cjs/components/src/components/Molecules/ChatQuickview/ChatQuickview.js +0 -514
  200. package/dist/cjs/components/src/components/Molecules/ChatQuickview/index.js +0 -17
  201. package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.js +0 -252
  202. package/dist/cjs/components/src/components/Molecules/ChatResult/index.js +0 -17
  203. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +0 -113
  204. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.js +0 -17
  205. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +0 -107
  206. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.js +0 -17
  207. package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +0 -628
  208. package/dist/cjs/components/src/components/Organisms/Chat/Chat.lang.js +0 -110
  209. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatAttachments.js +0 -105
  210. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +0 -161
  211. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatComposer.js +0 -166
  212. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +0 -369
  213. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatHistory.js +0 -130
  214. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatMessages.js +0 -218
  215. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +0 -123
  216. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatSideChat.js +0 -173
  217. package/dist/cjs/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +0 -149
  218. package/dist/cjs/components/src/components/Organisms/Chat/components/chatAccentTheme.js +0 -62
  219. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +0 -66
  220. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.js +0 -96
  221. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +0 -113
  222. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +0 -135
  223. package/dist/cjs/components/src/components/Organisms/Chat/index.js +0 -18
  224. package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.js +0 -94
  225. package/dist/cjs/components/src/components/Organisms/ChatButton/ChatButton.lang.js +0 -11
  226. package/dist/cjs/components/src/components/Organisms/ChatButton/index.js +0 -18
  227. package/dist/cjs/components/src/components/Templates/Chat/Chat.js +0 -47
  228. package/dist/cjs/components/src/components/Templates/Chat/index.js +0 -17
  229. package/dist/cjs/components/src/components/Templates/ChatButton/ChatButton.js +0 -47
  230. package/dist/cjs/components/src/components/Templates/ChatButton/index.js +0 -17
  231. package/dist/cjs/components/src/themes/base/components/templates/chat.js +0 -6
  232. package/dist/cjs/components/src/themes/base/components/templates/chatButton.js +0 -6
  233. package/dist/cjs/components/src/themes/bocachica/components/templates/chat.js +0 -6
  234. package/dist/cjs/components/src/themes/bocachica/components/templates/chatButton.js +0 -6
  235. package/dist/cjs/components/src/themes/pike/components/templates/chat.js +0 -6
  236. package/dist/cjs/components/src/themes/pike/components/templates/chatButton.js +0 -6
  237. package/dist/cjs/components/src/themes/snapnco/components/templates/chat.js +0 -6
  238. package/dist/cjs/components/src/themes/snapnco/components/templates/chatButton.js +0 -6
  239. package/dist/cjs/components/src/themes/snappy/components/templates/chat.js +0 -6
  240. package/dist/cjs/components/src/themes/snappy/components/templates/chatButton.js +0 -6
  241. package/dist/cjs/components/src/themes/themeComponents/chat.js +0 -14
  242. package/dist/cjs/components/src/themes/themeComponents/chatButton.js +0 -9
  243. package/dist/cjs/components/src/utilities/storybook.js +0 -17
  244. package/dist/cjs/src/Templates/Stores/library/components/Chat.js +0 -5
  245. package/dist/cjs/src/Templates/Stores/library/components/ChatButton.js +0 -5
  246. package/dist/cjs/src/create/createChatController.js +0 -31
  247. package/dist/cjs/src/utils/applyChatTargetInject.js +0 -25
  248. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +0 -17
  249. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +0 -1
  250. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +0 -92
  251. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +0 -2
  252. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +0 -1
  253. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.js +0 -1
  254. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts +0 -37
  255. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +0 -1
  256. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +0 -215
  257. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +0 -2
  258. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +0 -1
  259. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.js +0 -1
  260. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +0 -30
  261. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +0 -1
  262. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +0 -205
  263. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +0 -2
  264. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +0 -1
  265. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.js +0 -1
  266. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +0 -36
  267. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +0 -1
  268. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +0 -253
  269. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts +0 -2
  270. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts.map +0 -1
  271. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.js +0 -1
  272. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +0 -52
  273. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +0 -1
  274. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +0 -280
  275. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts +0 -2
  276. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +0 -1
  277. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.js +0 -1
  278. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +0 -25
  279. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +0 -1
  280. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +0 -168
  281. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +0 -2
  282. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +0 -1
  283. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.js +0 -1
  284. package/dist/esm/components/src/components/Molecules/ChatQuickview/ChatQuickview.d.ts +0 -30
  285. package/dist/esm/components/src/components/Molecules/ChatQuickview/ChatQuickview.d.ts.map +0 -1
  286. package/dist/esm/components/src/components/Molecules/ChatQuickview/ChatQuickview.js +0 -508
  287. package/dist/esm/components/src/components/Molecules/ChatQuickview/index.d.ts +0 -2
  288. package/dist/esm/components/src/components/Molecules/ChatQuickview/index.d.ts.map +0 -1
  289. package/dist/esm/components/src/components/Molecules/ChatQuickview/index.js +0 -1
  290. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts +0 -35
  291. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +0 -1
  292. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.js +0 -246
  293. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts +0 -2
  294. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts.map +0 -1
  295. package/dist/esm/components/src/components/Molecules/ChatResult/index.js +0 -1
  296. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +0 -24
  297. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +0 -1
  298. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +0 -107
  299. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +0 -2
  300. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +0 -1
  301. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.js +0 -1
  302. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +0 -16
  303. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +0 -1
  304. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +0 -101
  305. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +0 -2
  306. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +0 -1
  307. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.js +0 -1
  308. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts +0 -41
  309. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +0 -1
  310. package/dist/esm/components/src/components/Organisms/Chat/Chat.js +0 -622
  311. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts +0 -79
  312. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.d.ts.map +0 -1
  313. package/dist/esm/components/src/components/Organisms/Chat/Chat.lang.js +0 -105
  314. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts +0 -26
  315. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.d.ts.map +0 -1
  316. package/dist/esm/components/src/components/Organisms/Chat/components/ChatAttachments.js +0 -99
  317. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts +0 -13
  318. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.d.ts.map +0 -1
  319. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComparisonsTray.js +0 -155
  320. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts +0 -19
  321. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.d.ts.map +0 -1
  322. package/dist/esm/components/src/components/Organisms/Chat/components/ChatComposer.js +0 -160
  323. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts +0 -18
  324. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.d.ts.map +0 -1
  325. package/dist/esm/components/src/components/Organisms/Chat/components/ChatFacetsBar.js +0 -363
  326. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts +0 -11
  327. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.d.ts.map +0 -1
  328. package/dist/esm/components/src/components/Organisms/Chat/components/ChatHistory.js +0 -124
  329. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts +0 -30
  330. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.d.ts.map +0 -1
  331. package/dist/esm/components/src/components/Organisms/Chat/components/ChatMessages.js +0 -212
  332. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts +0 -13
  333. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.d.ts.map +0 -1
  334. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSessionFeedback.js +0 -117
  335. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts +0 -19
  336. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.d.ts.map +0 -1
  337. package/dist/esm/components/src/components/Organisms/Chat/components/ChatSideChat.js +0 -167
  338. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts +0 -14
  339. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.d.ts.map +0 -1
  340. package/dist/esm/components/src/components/Organisms/Chat/components/ChatTopicDrift.js +0 -143
  341. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts +0 -15
  342. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.d.ts.map +0 -1
  343. package/dist/esm/components/src/components/Organisms/Chat/components/chatAccentTheme.js +0 -58
  344. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +0 -32
  345. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +0 -1
  346. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +0 -62
  347. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +0 -40
  348. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +0 -1
  349. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.js +0 -92
  350. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +0 -43
  351. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +0 -1
  352. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +0 -109
  353. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts +0 -26
  354. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.d.ts.map +0 -1
  355. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatScrollLock.js +0 -131
  356. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +0 -3
  357. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts.map +0 -1
  358. package/dist/esm/components/src/components/Organisms/Chat/index.js +0 -2
  359. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts +0 -18
  360. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.d.ts.map +0 -1
  361. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.js +0 -88
  362. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts +0 -7
  363. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.d.ts.map +0 -1
  364. package/dist/esm/components/src/components/Organisms/ChatButton/ChatButton.lang.js +0 -8
  365. package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts +0 -3
  366. package/dist/esm/components/src/components/Organisms/ChatButton/index.d.ts.map +0 -1
  367. package/dist/esm/components/src/components/Organisms/ChatButton/index.js +0 -2
  368. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts +0 -12
  369. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts.map +0 -1
  370. package/dist/esm/components/src/components/Templates/Chat/Chat.js +0 -41
  371. package/dist/esm/components/src/components/Templates/Chat/index.d.ts +0 -2
  372. package/dist/esm/components/src/components/Templates/Chat/index.d.ts.map +0 -1
  373. package/dist/esm/components/src/components/Templates/Chat/index.js +0 -1
  374. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts +0 -13
  375. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.d.ts.map +0 -1
  376. package/dist/esm/components/src/components/Templates/ChatButton/ChatButton.js +0 -41
  377. package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts +0 -2
  378. package/dist/esm/components/src/components/Templates/ChatButton/index.d.ts.map +0 -1
  379. package/dist/esm/components/src/components/Templates/ChatButton/index.js +0 -1
  380. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts +0 -4
  381. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts.map +0 -1
  382. package/dist/esm/components/src/themes/base/components/templates/chat.js +0 -3
  383. package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts +0 -4
  384. package/dist/esm/components/src/themes/base/components/templates/chatButton.d.ts.map +0 -1
  385. package/dist/esm/components/src/themes/base/components/templates/chatButton.js +0 -3
  386. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts +0 -4
  387. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts.map +0 -1
  388. package/dist/esm/components/src/themes/bocachica/components/templates/chat.js +0 -3
  389. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts +0 -4
  390. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.d.ts.map +0 -1
  391. package/dist/esm/components/src/themes/bocachica/components/templates/chatButton.js +0 -3
  392. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts +0 -4
  393. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts.map +0 -1
  394. package/dist/esm/components/src/themes/pike/components/templates/chat.js +0 -3
  395. package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts +0 -4
  396. package/dist/esm/components/src/themes/pike/components/templates/chatButton.d.ts.map +0 -1
  397. package/dist/esm/components/src/themes/pike/components/templates/chatButton.js +0 -3
  398. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts +0 -4
  399. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts.map +0 -1
  400. package/dist/esm/components/src/themes/snapnco/components/templates/chat.js +0 -3
  401. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts +0 -4
  402. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.d.ts.map +0 -1
  403. package/dist/esm/components/src/themes/snapnco/components/templates/chatButton.js +0 -3
  404. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts +0 -4
  405. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts.map +0 -1
  406. package/dist/esm/components/src/themes/snappy/components/templates/chat.js +0 -3
  407. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts +0 -4
  408. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.d.ts.map +0 -1
  409. package/dist/esm/components/src/themes/snappy/components/templates/chatButton.js +0 -3
  410. package/dist/esm/components/src/themes/themeComponents/chat.d.ts +0 -4
  411. package/dist/esm/components/src/themes/themeComponents/chat.d.ts.map +0 -1
  412. package/dist/esm/components/src/themes/themeComponents/chat.js +0 -11
  413. package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts +0 -4
  414. package/dist/esm/components/src/themes/themeComponents/chatButton.d.ts.map +0 -1
  415. package/dist/esm/components/src/themes/themeComponents/chatButton.js +0 -6
  416. package/dist/esm/components/src/utilities/storybook.d.ts +0 -5
  417. package/dist/esm/components/src/utilities/storybook.d.ts.map +0 -1
  418. package/dist/esm/components/src/utilities/storybook.js +0 -13
  419. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts +0 -2
  420. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts.map +0 -1
  421. package/dist/esm/src/Templates/Stores/library/components/Chat.js +0 -1
  422. package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts +0 -2
  423. package/dist/esm/src/Templates/Stores/library/components/ChatButton.d.ts.map +0 -1
  424. package/dist/esm/src/Templates/Stores/library/components/ChatButton.js +0 -1
  425. package/dist/esm/src/create/createChatController.d.ts +0 -5
  426. package/dist/esm/src/create/createChatController.d.ts.map +0 -1
  427. package/dist/esm/src/create/createChatController.js +0 -29
  428. package/dist/esm/src/utils/applyChatTargetInject.d.ts +0 -3
  429. package/dist/esm/src/utils/applyChatTargetInject.d.ts.map +0 -1
  430. package/dist/esm/src/utils/applyChatTargetInject.js +0 -22
@@ -1,43 +0,0 @@
1
- import type { RefObject } from 'preact';
2
- export type UseChatOverflowOptions = {
3
- messagesContainerRef: RefObject<HTMLDivElement>;
4
- headerRef: RefObject<HTMLDivElement>;
5
- /**
6
- * Whether the chat panel is open. State resets on toggle.
7
- */
8
- open: boolean;
9
- /**
10
- * Whether the controller is currently loading. Triggers a scroll-to-bottom when it flips on.
11
- */
12
- loading: boolean;
13
- /**
14
- * Length of the visible chat. Drives the new-message popup + auto-scroll behavior.
15
- */
16
- visibleChatLength: number;
17
- /**
18
- * The last visible message — needed to differentiate auto-scroll for user vs assistant messages.
19
- */
20
- lastVisibleMessage: {
21
- messageType?: string;
22
- } | undefined;
23
- };
24
- export type UseChatOverflowResult = {
25
- /** True when there are messages off-screen below the current scroll position. */
26
- showNewMessages: boolean;
27
- /** Imperative dismiss for the "New messages" popup. */
28
- setShowNewMessages: (value: boolean) => void;
29
- /** True when the messages container is overflowing (used to switch comparison tray between in-flow and overlay). */
30
- messagesOverflow: boolean;
31
- /** Live ref tracking whether the user is currently near the bottom. */
32
- /** Imperatively scroll the messages container to the bottom (smooth). */
33
- scrollToBottom: () => void;
34
- /** Conditional scroll: only scrolls if the user is already near the bottom. */
35
- scrollToBottomIfNear: () => void;
36
- };
37
- /**
38
- * Manages the auto-scroll, "new message" indicator, and overflow detection for the
39
- * chat message list. Owns all scroll listeners and ResizeObservers so the host
40
- * component just consumes the derived state.
41
- */
42
- export declare const useChatOverflow: ({ messagesContainerRef, headerRef, open, loading, visibleChatLength, lastVisibleMessage, }: UseChatOverflowOptions) => UseChatOverflowResult;
43
- //# sourceMappingURL=useChatOverflow.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useChatOverflow.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/components/Organisms/Chat/hooks/useChatOverflow.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,MAAM,MAAM,sBAAsB,GAAG;IACpC,oBAAoB,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IAChD,SAAS,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;IACrC;;OAEG;IACH,IAAI,EAAE,OAAO,CAAC;IACd;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,kBAAkB,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;CACzD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IACnC,iFAAiF;IACjF,eAAe,EAAE,OAAO,CAAC;IACzB,uDAAuD;IACvD,kBAAkB,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,oHAAoH;IACpH,gBAAgB,EAAE,OAAO,CAAC;IAC1B,uEAAuE;IACvE,yEAAyE;IACzE,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,+EAA+E;IAC/E,oBAAoB,EAAE,MAAM,IAAI,CAAC;CACjC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,+FAOzB,sBAAsB,KAAG,qBAwG3B,CAAC"}
@@ -1,109 +0,0 @@
1
- import { useEffect, useRef, useState } from 'preact/hooks';
2
- /**
3
- * Manages the auto-scroll, "new message" indicator, and overflow detection for the
4
- * chat message list. Owns all scroll listeners and ResizeObservers so the host
5
- * component just consumes the derived state.
6
- */
7
- export const useChatOverflow = ({ messagesContainerRef, headerRef, open, loading, visibleChatLength, lastVisibleMessage, }) => {
8
- const [showNewMessages, setShowNewMessages] = useState(false);
9
- const [messagesOverflow, setMessagesOverflow] = useState(false);
10
- const isNearBottomRef = useRef(true);
11
- const scrollToBottom = () => {
12
- // Scroll the messages container directly (instead of scrollIntoView on the
13
- // bottom anchor) so the browser never walks up the ancestor chain. On small
14
- // viewports a smooth scrollIntoView could otherwise animate the document /
15
- // visual viewport and visually push the fixed-position chat off-screen.
16
- const container = messagesContainerRef.current;
17
- if (container) {
18
- container.scrollTo({ top: container.scrollHeight, behavior: 'smooth' });
19
- }
20
- };
21
- // Conditional scroll: only scrolls if the user is already near the bottom.
22
- const scrollToBottomIfNear = () => {
23
- if (isNearBottomRef.current) {
24
- scrollToBottom();
25
- }
26
- };
27
- // Scroll to bottom when chat opens
28
- useEffect(() => {
29
- if (open) {
30
- scrollToBottom();
31
- setShowNewMessages(false);
32
- isNearBottomRef.current = true;
33
- }
34
- }, [open]);
35
- // Handle new messages — auto-scroll for user messages, show popup for response messages when scrolled up
36
- useEffect(() => {
37
- if (!open || !lastVisibleMessage)
38
- return;
39
- if (lastVisibleMessage.messageType === 'user') {
40
- scrollToBottom();
41
- setShowNewMessages(false);
42
- }
43
- else if (isNearBottomRef.current) {
44
- scrollToBottom();
45
- setShowNewMessages(false);
46
- }
47
- else {
48
- setShowNewMessages(true);
49
- }
50
- }, [visibleChatLength]);
51
- // Scroll to show loading indicator when user sends a message
52
- useEffect(() => {
53
- if (open && loading) {
54
- scrollToBottom();
55
- }
56
- }, [loading]);
57
- // Track scroll position to dismiss the "New messages" popup when user scrolls to bottom
58
- useEffect(() => {
59
- const container = messagesContainerRef.current;
60
- if (!container)
61
- return;
62
- const handleScroll = () => {
63
- const threshold = 100;
64
- const isNearBottom = container.scrollHeight - container.scrollTop - container.clientHeight < threshold;
65
- isNearBottomRef.current = isNearBottom;
66
- if (isNearBottom) {
67
- setShowNewMessages(false);
68
- }
69
- };
70
- container.addEventListener('scroll', handleScroll);
71
- return () => container.removeEventListener('scroll', handleScroll);
72
- }, [open]);
73
- // Track whether the messages container is overflowing so the comparisons header
74
- // can switch between in-flow (short conversations — top content stays reachable)
75
- // and overlay (overflowing — avoid layout shift when toggling the tray).
76
- // Hysteresis: when already in overlay, only return to in-flow if the content
77
- // would still fit *with* the header re-inserted — otherwise the two states
78
- // fight each other and the layout flickers.
79
- useEffect(() => {
80
- const container = messagesContainerRef.current;
81
- if (!container || typeof ResizeObserver === 'undefined')
82
- return;
83
- const update = () => {
84
- setMessagesOverflow((prev) => {
85
- const headerHeight = headerRef.current?.offsetHeight || 0;
86
- if (prev) {
87
- // Currently overlay: header isn't taking flow space. Only switch
88
- // back to in-flow if the content would fit with the header added.
89
- return container.scrollHeight > container.clientHeight - headerHeight + 1;
90
- }
91
- // Currently in-flow: header already takes space — straightforward check.
92
- return container.scrollHeight > container.clientHeight + 1;
93
- });
94
- };
95
- update();
96
- const observer = new ResizeObserver(update);
97
- observer.observe(container);
98
- if (headerRef.current)
99
- observer.observe(headerRef.current);
100
- return () => observer.disconnect();
101
- }, [open, visibleChatLength]);
102
- return {
103
- showNewMessages,
104
- setShowNewMessages,
105
- messagesOverflow,
106
- scrollToBottom,
107
- scrollToBottomIfNear,
108
- };
109
- };
@@ -1,26 +0,0 @@
1
- import type { RefObject } from 'preact';
2
- export type UseChatScrollLockOptions = {
3
- /** Whether the chat panel is open — the lock is only active while open. */
4
- open: boolean;
5
- /** Ref to the chat root element — touches outside it are always blocked. */
6
- chatRef: RefObject<HTMLDivElement>;
7
- };
8
- /**
9
- * Prevents the background page from scrolling while the chat is open.
10
- *
11
- * Locks body overflow for wheel/keyboard scrolling, and installs a `touchmove`
12
- * handler for touch devices. iOS Safari (real iPad/iPhone) rubber-band-scrolls
13
- * the body when a touchmove inside `.ss__chat__messages` reaches the top/bottom —
14
- * and `overscroll-behavior: contain` is ignored there.
15
- *
16
- * We don't reposition the body (locking via `position: fixed` on `<body>` leaves
17
- * iPad Safari in a stuck viewport state where the page can't scroll after the
18
- * lock is released). Instead the `touchmove` handler:
19
- * - allows the touchmove if it's inside a scrollable region of the chat
20
- * and that region isn't at its scroll edge in the swipe direction;
21
- * - calls `preventDefault()` otherwise — which is what blocks both
22
- * background scrolling and iOS rubber-band overscroll.
23
- * Cleanup just removes the listeners, so nothing can leak into the page.
24
- */
25
- export declare const useChatScrollLock: ({ open, chatRef }: UseChatScrollLockOptions) => void;
26
- //# sourceMappingURL=useChatScrollLock.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useChatScrollLock.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/components/Organisms/Chat/hooks/useChatScrollLock.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,MAAM,MAAM,wBAAwB,GAAG;IACtC,2EAA2E;IAC3E,IAAI,EAAE,OAAO,CAAC;IACd,4EAA4E;IAC5E,OAAO,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;CACnC,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iBAAiB,sBAAuB,wBAAwB,KAAG,IAyG/E,CAAC"}
@@ -1,131 +0,0 @@
1
- import { useEffect } from 'preact/hooks';
2
- /**
3
- * Prevents the background page from scrolling while the chat is open.
4
- *
5
- * Locks body overflow for wheel/keyboard scrolling, and installs a `touchmove`
6
- * handler for touch devices. iOS Safari (real iPad/iPhone) rubber-band-scrolls
7
- * the body when a touchmove inside `.ss__chat__messages` reaches the top/bottom —
8
- * and `overscroll-behavior: contain` is ignored there.
9
- *
10
- * We don't reposition the body (locking via `position: fixed` on `<body>` leaves
11
- * iPad Safari in a stuck viewport state where the page can't scroll after the
12
- * lock is released). Instead the `touchmove` handler:
13
- * - allows the touchmove if it's inside a scrollable region of the chat
14
- * and that region isn't at its scroll edge in the swipe direction;
15
- * - calls `preventDefault()` otherwise — which is what blocks both
16
- * background scrolling and iOS rubber-band overscroll.
17
- * Cleanup just removes the listeners, so nothing can leak into the page.
18
- */
19
- export const useChatScrollLock = ({ open, chatRef }) => {
20
- // Lock body scroll while chat is open so touch/wheel scrolls don't leak to the page behind
21
- useEffect(() => {
22
- if (!open)
23
- return;
24
- const body = document.body;
25
- const previousOverflow = body.style.overflow;
26
- const previousOverscroll = body.style.overscrollBehavior;
27
- body.style.overflow = 'hidden';
28
- body.style.overscrollBehavior = 'contain';
29
- return () => {
30
- body.style.overflow = previousOverflow;
31
- body.style.overscrollBehavior = previousOverscroll;
32
- };
33
- }, [open]);
34
- useEffect(() => {
35
- if (!open)
36
- return;
37
- if (typeof document === 'undefined')
38
- return;
39
- let startX = 0;
40
- let startY = 0;
41
- let scrollEl = null;
42
- // Walk up from the touch target to find the first ancestor inside the chat
43
- // that is actually scrollable in either axis. Stop at the chat root so we
44
- // never consider elements outside the chat.
45
- const findScrollableInChat = (start) => {
46
- const chatRoot = chatRef.current;
47
- if (!chatRoot)
48
- return null;
49
- let el = start;
50
- while (el && chatRoot.contains(el)) {
51
- const style = getComputedStyle(el);
52
- const scrollableY = (style.overflowY === 'auto' || style.overflowY === 'scroll') && el.scrollHeight > el.clientHeight;
53
- const scrollableX = (style.overflowX === 'auto' || style.overflowX === 'scroll') && el.scrollWidth > el.clientWidth;
54
- if (scrollableY || scrollableX) {
55
- return el;
56
- }
57
- if (el === chatRoot)
58
- break;
59
- el = el.parentElement;
60
- }
61
- return null;
62
- };
63
- const onTouchStart = (e) => {
64
- if (!e.touches[0])
65
- return;
66
- startX = e.touches[0].clientX;
67
- startY = e.touches[0].clientY;
68
- scrollEl = findScrollableInChat(e.target);
69
- };
70
- const onTouchMove = (e) => {
71
- const target = e.target;
72
- const chatRoot = chatRef.current;
73
- const inChat = !!(chatRoot && target && chatRoot.contains(target));
74
- // Touches outside the chat shouldn't scroll the background.
75
- if (!inChat) {
76
- if (e.cancelable)
77
- e.preventDefault();
78
- return;
79
- }
80
- // Inside the chat but no scrollable container — block to prevent body scroll.
81
- if (!scrollEl) {
82
- if (e.cancelable)
83
- e.preventDefault();
84
- return;
85
- }
86
- // Inside a scrollable container — only block when at the edge in the
87
- // swipe direction, so internal scrolling continues to work. Detect the
88
- // dominant axis so horizontally-scrollable rows (e.g. the facets row)
89
- // also get to handle their own touch gestures.
90
- const currentX = e.touches[0]?.clientX ?? startX;
91
- const currentY = e.touches[0]?.clientY ?? startY;
92
- const deltaX = currentX - startX;
93
- const deltaY = currentY - startY;
94
- const horizontal = Math.abs(deltaX) > Math.abs(deltaY);
95
- if (horizontal) {
96
- const scrollsX = scrollEl.scrollWidth > scrollEl.clientWidth;
97
- if (!scrollsX) {
98
- if (e.cancelable)
99
- e.preventDefault();
100
- return;
101
- }
102
- const atLeft = scrollEl.scrollLeft <= 0;
103
- const atRight = scrollEl.scrollLeft + scrollEl.clientWidth >= scrollEl.scrollWidth - 1;
104
- if ((atLeft && deltaX > 0) || (atRight && deltaX < 0)) {
105
- if (e.cancelable)
106
- e.preventDefault();
107
- }
108
- }
109
- else {
110
- const scrollsY = scrollEl.scrollHeight > scrollEl.clientHeight;
111
- if (!scrollsY) {
112
- if (e.cancelable)
113
- e.preventDefault();
114
- return;
115
- }
116
- const atTop = scrollEl.scrollTop <= 0;
117
- const atBottom = scrollEl.scrollTop + scrollEl.clientHeight >= scrollEl.scrollHeight - 1;
118
- if ((atTop && deltaY > 0) || (atBottom && deltaY < 0)) {
119
- if (e.cancelable)
120
- e.preventDefault();
121
- }
122
- }
123
- };
124
- document.addEventListener('touchstart', onTouchStart, { passive: true });
125
- document.addEventListener('touchmove', onTouchMove, { passive: false });
126
- return () => {
127
- document.removeEventListener('touchstart', onTouchStart);
128
- document.removeEventListener('touchmove', onTouchMove);
129
- };
130
- }, [open]);
131
- };
@@ -1,3 +0,0 @@
1
- export * from './Chat';
2
- export * from './Chat.lang';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/Chat/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './Chat';
2
- export * from './Chat.lang';
@@ -1,18 +0,0 @@
1
- import { h, ComponentChildren } from 'preact';
2
- import type { ChatController } from '@athoscommerce/snap-controller';
3
- import { ComponentProps } from '../../../types';
4
- import { IconProps, IconType } from '../../Atoms/Icon';
5
- import { ChatButtonLang } from './ChatButton.lang';
6
- export declare const ChatButtonOrganism: ((properties: ChatButtonOrganismProps) => import("@emotion/react/jsx-runtime").JSX.Element | h.JSX.Element | null) & {
7
- displayName: string;
8
- };
9
- export type ChatButtonOrganismProps = {
10
- controller: ChatController;
11
- lang?: Partial<ChatButtonLang>;
12
- content?: string | JSX.Element;
13
- } & ChatButtonTemplatesLegalProps & ComponentProps<ChatButtonOrganismProps>;
14
- export type ChatButtonTemplatesLegalProps = {
15
- icon?: IconType | Partial<IconProps> | boolean;
16
- children?: ComponentChildren;
17
- };
18
- //# sourceMappingURL=ChatButton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatButton.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/ChatButton/ChatButton.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAQ9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAGrE,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAG7D,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAyB,MAAM,mBAAmB,CAAC;AAyC1E,eAAO,MAAM,kBAAkB,gBAAyB,uBAAuB;;CA0E7E,CAAC;AAMH,MAAM,MAAM,uBAAuB,GAAG;IACrC,UAAU,EAAE,cAAc,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;CAC/B,GAAG,6BAA6B,GAChC,cAAc,CAAC,uBAAuB,CAAC,CAAC;AAEzC,MAAM,MAAM,6BAA6B,GAAG;IAC3C,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,OAAO,CAAC;IAC/C,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC7B,CAAC"}
@@ -1,88 +0,0 @@
1
- import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
- import { useRef, useEffect } from 'preact/hooks';
3
- import { css } from '@emotion/react';
4
- import classnames from 'classnames';
5
- import deepmerge from 'deepmerge';
6
- import { observer } from 'mobx-react-lite';
7
- import { useTheme, CacheProvider, useTreePath } from '../../../providers';
8
- import { cloneWithProps, defined, mergeProps, mergeStyles } from '../../../utilities';
9
- import { useCustomComponentOverride } from '../../../hooks';
10
- import { Button } from '../../Atoms/Button';
11
- import { langAttrOf } from '../Chat/Chat.lang';
12
- import { chatButtonDefaultLang } from './ChatButton.lang';
13
- const defaultStyles = ({ theme }) => {
14
- // primary may be 'currentColor' (base theme) — background stays fixed so the
15
- // pill remains legible wherever it inherits its color from
16
- const color = theme?.variables?.colors?.primary || '#333';
17
- return css({
18
- display: 'inline-flex',
19
- alignItems: 'center',
20
- justifyContent: 'center',
21
- gap: '8px',
22
- padding: '8px 16px',
23
- background: '#fff',
24
- color: color,
25
- border: `1px solid ${color}`,
26
- borderRadius: '24px',
27
- fontSize: '14px',
28
- fontWeight: 600,
29
- lineHeight: 1.2,
30
- cursor: 'pointer',
31
- transition: 'box-shadow 0.15s ease',
32
- '&:hover': {
33
- boxShadow: '0 2px 6px rgba(0, 0, 0, 0.15)',
34
- },
35
- '&:focus-visible': {
36
- outline: '2px solid currentColor',
37
- outlineOffset: '2px',
38
- },
39
- // native Button always renders its content span — collapse it when empty
40
- // so the flex gap doesn't offset icon-only buttons
41
- '.ss__button__content:empty': {
42
- display: 'none',
43
- },
44
- '.ss__icon': {
45
- fill: 'currentColor',
46
- stroke: 'currentColor',
47
- },
48
- });
49
- };
50
- export const ChatButtonOrganism = observer((properties) => {
51
- const globalTheme = useTheme();
52
- const globalTreePath = useTreePath();
53
- const defaultProps = {
54
- icon: 'chat',
55
- treePath: globalTreePath,
56
- };
57
- const props = mergeProps('chatButton', globalTheme, defaultProps, properties);
58
- const { overrideElement, shouldRenderDefault } = useCustomComponentOverride('chatButton', props);
59
- const { className, internalClassName, controller, content, children, icon, disableStyles, treePath } = props;
60
- const { store } = controller;
61
- // Register with the store so the Chat organism hides its built-in bubble while
62
- // an external launcher is mounted. Runs before any early return (hooks-order safe).
63
- useEffect(() => store.registerLauncher(), [store]);
64
- // Same visibility rule as the Chat organism: hidden when disabled at bootstrap,
65
- // but kept mounted when chat becomes disabled mid-session.
66
- const wasVisibleRef = useRef(false);
67
- if (!store.chatEnabled && !wasVisibleRef.current) {
68
- return _jsx(_Fragment, {});
69
- }
70
- wasVisibleRef.current = true;
71
- if (!shouldRenderDefault) {
72
- return overrideElement;
73
- }
74
- const subProps = {
75
- button: {
76
- // inherited props
77
- ...defined({
78
- disableStyles,
79
- }),
80
- // component theme overrides
81
- theme: props?.theme,
82
- treePath,
83
- },
84
- };
85
- const styling = mergeStyles(props, defaultStyles);
86
- const lang = deepmerge(chatButtonDefaultLang, props.lang || {});
87
- return (_jsx(CacheProvider, { children: _jsx(Button, { ...styling, ...subProps.button, native: true, type: "button", className: classnames('ss__chat-button', { 'ss__chat-button--open': store.open }, className, internalClassName), "aria-label": store.open ? langAttrOf(lang.closeChatButton, 'aria-label') : langAttrOf(lang.openChatButton, 'aria-label'), title: store.open ? langAttrOf(lang.closeChatButton, 'title') : langAttrOf(lang.openChatButton, 'title'), "aria-expanded": store.open, onClick: () => controller.handlers.button.click(), content: content || children ? (_jsxs("span", { className: "ss__chat-button__content", children: [cloneWithProps(content, { treePath }), cloneWithProps(children, { treePath })] })) : undefined, icon: icon && { internalClassName: 'ss__chat-button__icon', ...(typeof icon == 'string' ? { icon: icon } : typeof icon == 'object' ? icon : {}) } }) }));
88
- });
@@ -1,7 +0,0 @@
1
- import { Lang } from '../../../hooks';
2
- export interface ChatButtonLang {
3
- openChatButton: Lang<never>;
4
- closeChatButton: Lang<never>;
5
- }
6
- export declare const chatButtonDefaultLang: Partial<ChatButtonLang>;
7
- //# sourceMappingURL=ChatButton.lang.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatButton.lang.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/ChatButton/ChatButton.lang.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAEtC,MAAM,WAAW,cAAc;IAC9B,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5B,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;CAC7B;AAED,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC,cAAc,CAOzD,CAAC"}
@@ -1,8 +0,0 @@
1
- export const chatButtonDefaultLang = {
2
- openChatButton: {
3
- attributes: { 'aria-label': 'Open chat', title: 'Open Chat' },
4
- },
5
- closeChatButton: {
6
- attributes: { 'aria-label': 'Close chat', title: 'Close Chat' },
7
- },
8
- };
@@ -1,3 +0,0 @@
1
- export * from './ChatButton';
2
- export * from './ChatButton.lang';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Organisms/ChatButton/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC"}
@@ -1,2 +0,0 @@
1
- export * from './ChatButton';
2
- export * from './ChatButton.lang';
@@ -1,12 +0,0 @@
1
- import { ComponentProps } from '../../../types';
2
- import { ChatTemplatesLegalProps, ChatLang } from '../../Organisms/Chat';
3
- import type { ChatController } from '@athoscommerce/snap-controller';
4
- export declare const Chat: ((properties: ChatProps) => JSX.Element) & {
5
- displayName: string;
6
- };
7
- export type ChatProps = {
8
- controller: ChatController;
9
- lang?: Partial<ChatLang>;
10
- } & ChatTemplatesLegalProps & ComponentProps<ChatProps>;
11
- export type { ChatTemplatesLegalProps, ChatLang };
12
- //# sourceMappingURL=Chat.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chat.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Templates/Chat/Chat.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAE7D,OAAO,EAAmC,uBAAuB,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC1G,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAUrE,eAAO,MAAM,IAAI,gBAAyB,SAAS,KAAG,GAAG,CAAC,OAAO;;CAuC/D,CAAC;AAMH,MAAM,MAAM,SAAS,GAAG;IACvB,UAAU,EAAE,cAAc,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CACzB,GAAG,uBAAuB,GAC1B,cAAc,CAAC,SAAS,CAAC,CAAC;AAE3B,YAAY,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,41 +0,0 @@
1
- import { jsx as _jsx } from "@emotion/react/jsx-runtime";
2
- import { css } from '@emotion/react';
3
- import classnames from 'classnames';
4
- import { observer } from 'mobx-react-lite';
5
- import { useTheme, CacheProvider, useTreePath } from '../../../providers';
6
- import { defined, mergeProps, mergeStyles } from '../../../utilities';
7
- import { ChatOrganism } from '../../Organisms/Chat';
8
- const defaultStyles = () => {
9
- // The template itself is layout-free — the underlying Chat organism handles
10
- // fixed positioning and sizing. The wrapper exists purely so theme overrides
11
- // flow through mergeProps('chat', ...) and so the Chat surface can be themed
12
- // per-template like Search and Recommendation.
13
- return css({});
14
- };
15
- export const Chat = observer((properties) => {
16
- const globalTheme = useTheme();
17
- const globalTreePath = useTreePath();
18
- const defaultProps = {
19
- treePath: globalTreePath,
20
- };
21
- const props = mergeProps('chat', globalTheme, defaultProps, properties);
22
- const { className, internalClassName, controller, disableStyles, treePath } = props;
23
- const subProps = {
24
- Chat: {
25
- // inherited props
26
- ...defined({
27
- disableStyles,
28
- }),
29
- // component theme overrides
30
- theme: props.theme,
31
- treePath,
32
- },
33
- };
34
- const styling = mergeStyles(props, defaultStyles);
35
- // className/internalClassName stay on the template wrapper only — spreading them
36
- // into the organism would duplicate user classes on two DOM levels
37
- // treePath is omitted too — the organism calls mergeProps('chat') itself, and passing
38
- // this one down would append a second 'chat' segment (ss-path="chat chat")
39
- const organismProps = { ...props, className: undefined, internalClassName: undefined, treePath: undefined };
40
- return (_jsx(CacheProvider, { children: _jsx("div", { ...styling, className: classnames('ss__chat-template', className, internalClassName), children: _jsx(ChatOrganism, { ...subProps.Chat, ...organismProps, controller: controller }) }) }));
41
- });
@@ -1,2 +0,0 @@
1
- export * from './Chat';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Templates/Chat/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -1 +0,0 @@
1
- export * from './Chat';
@@ -1,13 +0,0 @@
1
- import { ComponentProps } from '../../../types';
2
- import { ChatButtonTemplatesLegalProps, ChatButtonLang } from '../../Organisms/ChatButton';
3
- import type { ChatController } from '@athoscommerce/snap-controller';
4
- export declare const ChatButton: ((properties: ChatButtonProps) => JSX.Element) & {
5
- displayName: string;
6
- };
7
- export type ChatButtonProps = {
8
- controller: ChatController;
9
- lang?: Partial<ChatButtonLang>;
10
- content?: string | JSX.Element;
11
- } & ChatButtonTemplatesLegalProps & ComponentProps<ChatButtonProps>;
12
- export type { ChatButtonTemplatesLegalProps, ChatButtonLang };
13
- //# sourceMappingURL=ChatButton.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ChatButton.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Templates/ChatButton/ChatButton.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAE7D,OAAO,EAA+C,6BAA6B,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACxI,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAUrE,eAAO,MAAM,UAAU,gBAAyB,eAAe,KAAG,GAAG,CAAC,OAAO;;CAuC3E,CAAC;AAMH,MAAM,MAAM,eAAe,GAAG;IAC7B,UAAU,EAAE,cAAc,CAAC;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC;CAC/B,GAAG,6BAA6B,GAChC,cAAc,CAAC,eAAe,CAAC,CAAC;AAEjC,YAAY,EAAE,6BAA6B,EAAE,cAAc,EAAE,CAAC"}
@@ -1,41 +0,0 @@
1
- import { jsx as _jsx } from "@emotion/react/jsx-runtime";
2
- import { css } from '@emotion/react';
3
- import classnames from 'classnames';
4
- import { observer } from 'mobx-react-lite';
5
- import { useTheme, CacheProvider, useTreePath } from '../../../providers';
6
- import { defined, mergeProps, mergeStyles } from '../../../utilities';
7
- import { ChatButtonOrganism } from '../../Organisms/ChatButton';
8
- const defaultStyles = () => {
9
- // inline-block so the wrapper flows alongside its siblings when injected into
10
- // merchant chrome (e.g. a nav); all button styling lives in the organism
11
- return css({
12
- display: 'inline-block',
13
- });
14
- };
15
- export const ChatButton = observer((properties) => {
16
- const globalTheme = useTheme();
17
- const globalTreePath = useTreePath();
18
- const defaultProps = {
19
- treePath: globalTreePath,
20
- };
21
- const props = mergeProps('chatButton', globalTheme, defaultProps, properties);
22
- const { className, internalClassName, controller, disableStyles, treePath } = props;
23
- const subProps = {
24
- ChatButton: {
25
- // inherited props
26
- ...defined({
27
- disableStyles,
28
- }),
29
- // component theme overrides
30
- theme: props.theme,
31
- treePath,
32
- },
33
- };
34
- const styling = mergeStyles(props, defaultStyles);
35
- // className/internalClassName stay on the template wrapper only — spreading them
36
- // into the organism would duplicate user classes on two DOM levels
37
- // treePath is omitted too — the organism calls mergeProps('chatButton') itself, and passing
38
- // this one down would append a second 'chatButton' segment
39
- const organismProps = { ...props, className: undefined, internalClassName: undefined, treePath: undefined };
40
- return (_jsx(CacheProvider, { children: _jsx("div", { ...styling, className: classnames('ss__chat-button-template', className, internalClassName), children: _jsx(ChatButtonOrganism, { ...subProps.ChatButton, ...organismProps, controller: controller }) }) }));
41
- });
@@ -1,2 +0,0 @@
1
- export * from './ChatButton';
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Templates/ChatButton/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
@@ -1 +0,0 @@
1
- export * from './ChatButton';
@@ -1,4 +0,0 @@
1
- import type { ChatProps, ChatTemplatesLegalProps } from '../../../../components/Templates/Chat';
2
- import { ThemeComponent } from '../../../../providers';
3
- export declare const chat: ThemeComponent<'chat', ChatProps, ChatTemplatesLegalProps>;
4
- //# sourceMappingURL=chat.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../../../../../../../components/src/themes/base/components/templates/chat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAEhG,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,eAAO,MAAM,IAAI,EAAE,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,uBAAuB,CAA2B,CAAC"}
@@ -1,3 +0,0 @@
1
- import { chatThemeComponentProps } from '../../../themeComponents/chat';
2
- // Chat component props come from Template export
3
- export const chat = chatThemeComponentProps;