@athoscommerce/snap-preact 1.5.0 → 1.5.1-beta.112

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 (381) hide show
  1. package/dist/cjs/components/src/components/Atoms/Button/Button.d.ts +1 -1
  2. package/dist/cjs/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  3. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +7 -0
  4. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +1 -0
  5. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +85 -0
  6. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +2 -0
  7. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +1 -0
  8. package/dist/cjs/components/src/components/Atoms/ChatLoadingIndicator/index.js +17 -0
  9. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.d.ts +1 -0
  10. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  11. package/dist/cjs/components/src/components/Atoms/Dropdown/Dropdown.js +30 -13
  12. package/dist/cjs/components/src/components/Atoms/Icon/paths.d.ts +21 -0
  13. package/dist/cjs/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
  14. package/dist/cjs/components/src/components/Atoms/Icon/paths.js +21 -0
  15. package/dist/cjs/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +2 -2
  16. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts +20 -0
  17. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +1 -0
  18. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +186 -0
  19. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +2 -0
  20. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +1 -0
  21. package/dist/cjs/components/src/components/Molecules/ChatAttachmentContext/index.js +17 -0
  22. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +18 -0
  23. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +1 -0
  24. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +124 -0
  25. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +2 -0
  26. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +1 -0
  27. package/dist/cjs/components/src/components/Molecules/ChatInspirationResultMessage/index.js +17 -0
  28. package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +18 -0
  29. package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +1 -0
  30. package/dist/cjs/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +183 -0
  31. package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.d.ts +2 -0
  32. package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.d.ts.map +1 -0
  33. package/dist/cjs/components/src/components/Molecules/ChatMessageText/index.js +17 -0
  34. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +15 -0
  35. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +1 -0
  36. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +255 -0
  37. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.d.ts +2 -0
  38. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +1 -0
  39. package/dist/cjs/components/src/components/Molecules/ChatMessageUser/index.js +17 -0
  40. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +17 -0
  41. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +1 -0
  42. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +122 -0
  43. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +2 -0
  44. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +1 -0
  45. package/dist/cjs/components/src/components/Molecules/ChatProductComparisonMessage/index.js +17 -0
  46. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +25 -0
  47. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +1 -0
  48. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +489 -0
  49. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +2 -0
  50. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +1 -0
  51. package/dist/cjs/components/src/components/Molecules/ChatProductQueryMessage/index.js +17 -0
  52. package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.d.ts +11 -0
  53. package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +1 -0
  54. package/dist/cjs/components/src/components/Molecules/ChatResult/ChatResult.js +189 -0
  55. package/dist/cjs/components/src/components/Molecules/ChatResult/index.d.ts +2 -0
  56. package/dist/cjs/components/src/components/Molecules/ChatResult/index.d.ts.map +1 -0
  57. package/dist/cjs/components/src/components/Molecules/ChatResult/index.js +17 -0
  58. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +12 -0
  59. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +1 -0
  60. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +133 -0
  61. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +2 -0
  62. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +1 -0
  63. package/dist/cjs/components/src/components/Molecules/ChatResultsDisplay/index.js +17 -0
  64. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +15 -0
  65. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +1 -0
  66. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +99 -0
  67. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +2 -0
  68. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +1 -0
  69. package/dist/cjs/components/src/components/Molecules/ChatSuggestedQuestions/index.js +17 -0
  70. package/dist/cjs/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +2 -2
  71. package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts +5 -3
  72. package/dist/cjs/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  73. package/dist/cjs/components/src/components/Molecules/Result/Result.js +14 -8
  74. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts +6 -1
  75. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  76. package/dist/cjs/components/src/components/Molecules/SearchInput/SearchInput.js +20 -3
  77. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  78. package/dist/cjs/components/src/components/Molecules/Slideout/Slideout.js +30 -12
  79. package/dist/cjs/components/src/components/Organisms/Chat/Chat.d.ts +27 -0
  80. package/dist/cjs/components/src/components/Organisms/Chat/Chat.d.ts.map +1 -0
  81. package/dist/cjs/components/src/components/Organisms/Chat/Chat.js +810 -0
  82. package/dist/cjs/components/src/components/Organisms/Chat/Chat.styles.d.ts +16 -0
  83. package/dist/cjs/components/src/components/Organisms/Chat/Chat.styles.d.ts.map +1 -0
  84. package/dist/cjs/components/src/components/Organisms/Chat/Chat.styles.js +1090 -0
  85. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +32 -0
  86. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +1 -0
  87. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +104 -0
  88. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +40 -0
  89. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +1 -0
  90. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatGestures.js +87 -0
  91. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +44 -0
  92. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +1 -0
  93. package/dist/cjs/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +116 -0
  94. package/dist/cjs/components/src/components/Organisms/Chat/index.d.ts +2 -0
  95. package/dist/cjs/components/src/components/Organisms/Chat/index.d.ts.map +1 -0
  96. package/dist/cjs/components/src/components/Organisms/Chat/index.js +17 -0
  97. package/dist/cjs/components/src/components/Organisms/Facet/Facet.js +2 -1
  98. package/dist/cjs/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +2 -1
  99. package/dist/cjs/components/src/components/Organisms/Results/Results.js +1 -1
  100. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts +1 -1
  101. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  102. package/dist/cjs/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +3 -1
  103. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts +1 -1
  104. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  105. package/dist/cjs/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +3 -1
  106. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts +1 -1
  107. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  108. package/dist/cjs/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +3 -1
  109. package/dist/cjs/components/src/components/Templates/Chat/Chat.d.ts +12 -0
  110. package/dist/cjs/components/src/components/Templates/Chat/Chat.d.ts.map +1 -0
  111. package/dist/cjs/components/src/components/Templates/Chat/Chat.js +55 -0
  112. package/dist/cjs/components/src/components/Templates/Chat/index.d.ts +2 -0
  113. package/dist/cjs/components/src/components/Templates/Chat/index.d.ts.map +1 -0
  114. package/dist/cjs/components/src/components/Templates/Chat/index.js +17 -0
  115. package/dist/cjs/components/src/index.d.ts +11 -0
  116. package/dist/cjs/components/src/index.d.ts.map +1 -1
  117. package/dist/cjs/components/src/index.js +13 -1
  118. package/dist/cjs/components/src/providers/withTracking.d.ts +2 -2
  119. package/dist/cjs/components/src/providers/withTracking.d.ts.map +1 -1
  120. package/dist/cjs/components/src/themes/base/components/templates/chat.d.ts +4 -0
  121. package/dist/cjs/components/src/themes/base/components/templates/chat.d.ts.map +1 -0
  122. package/dist/cjs/components/src/themes/base/components/templates/chat.js +6 -0
  123. package/dist/cjs/components/src/themes/base/components/templates/index.d.ts.map +1 -1
  124. package/dist/cjs/components/src/themes/base/components/templates/index.js +5 -4
  125. package/dist/cjs/components/src/themes/bocachica/components/templates/chat.d.ts +4 -0
  126. package/dist/cjs/components/src/themes/bocachica/components/templates/chat.d.ts.map +1 -0
  127. package/dist/cjs/components/src/themes/bocachica/components/templates/chat.js +6 -0
  128. package/dist/cjs/components/src/themes/bocachica/components/templates/index.d.ts.map +1 -1
  129. package/dist/cjs/components/src/themes/bocachica/components/templates/index.js +5 -4
  130. package/dist/cjs/components/src/themes/everest/components/templates/chat.d.ts +4 -0
  131. package/dist/cjs/components/src/themes/everest/components/templates/chat.d.ts.map +1 -0
  132. package/dist/cjs/components/src/themes/everest/components/templates/chat.js +6 -0
  133. package/dist/cjs/components/src/themes/everest/components/templates/index.d.ts.map +1 -1
  134. package/dist/cjs/components/src/themes/everest/components/templates/index.js +5 -4
  135. package/dist/cjs/components/src/themes/matterhorn/components/templates/chat.d.ts +4 -0
  136. package/dist/cjs/components/src/themes/matterhorn/components/templates/chat.d.ts.map +1 -0
  137. package/dist/cjs/components/src/themes/matterhorn/components/templates/chat.js +6 -0
  138. package/dist/cjs/components/src/themes/matterhorn/components/templates/index.d.ts.map +1 -1
  139. package/dist/cjs/components/src/themes/matterhorn/components/templates/index.js +5 -4
  140. package/dist/cjs/components/src/themes/pike/components/templates/chat.d.ts +4 -0
  141. package/dist/cjs/components/src/themes/pike/components/templates/chat.d.ts.map +1 -0
  142. package/dist/cjs/components/src/themes/pike/components/templates/chat.js +6 -0
  143. package/dist/cjs/components/src/themes/pike/components/templates/index.d.ts.map +1 -1
  144. package/dist/cjs/components/src/themes/pike/components/templates/index.js +5 -4
  145. package/dist/cjs/components/src/themes/snapnco/components/templates/chat.d.ts +4 -0
  146. package/dist/cjs/components/src/themes/snapnco/components/templates/chat.d.ts.map +1 -0
  147. package/dist/cjs/components/src/themes/snapnco/components/templates/chat.js +6 -0
  148. package/dist/cjs/components/src/themes/snapnco/components/templates/index.d.ts.map +1 -1
  149. package/dist/cjs/components/src/themes/snapnco/components/templates/index.js +5 -4
  150. package/dist/cjs/components/src/themes/snappy/components/templates/chat.d.ts +4 -0
  151. package/dist/cjs/components/src/themes/snappy/components/templates/chat.d.ts.map +1 -0
  152. package/dist/cjs/components/src/themes/snappy/components/templates/chat.js +6 -0
  153. package/dist/cjs/components/src/themes/snappy/components/templates/index.d.ts.map +1 -1
  154. package/dist/cjs/components/src/themes/snappy/components/templates/index.js +5 -4
  155. package/dist/cjs/components/src/themes/themeComponents/chat.d.ts +4 -0
  156. package/dist/cjs/components/src/themes/themeComponents/chat.d.ts.map +1 -0
  157. package/dist/cjs/components/src/themes/themeComponents/chat.js +14 -0
  158. package/dist/cjs/components/src/utilities/Colour/Colour.d.ts +11 -0
  159. package/dist/cjs/components/src/utilities/Colour/Colour.d.ts.map +1 -1
  160. package/dist/cjs/components/src/utilities/Colour/Colour.js +32 -0
  161. package/dist/cjs/components/src/utilities/snapify.d.ts +3 -2
  162. package/dist/cjs/components/src/utilities/snapify.d.ts.map +1 -1
  163. package/dist/cjs/components/src/utilities/snapify.js +48 -0
  164. package/dist/cjs/src/Snap.d.ts +2 -1
  165. package/dist/cjs/src/Snap.d.ts.map +1 -1
  166. package/dist/cjs/src/Snap.js +134 -24
  167. package/dist/cjs/src/Templates/SnapTemplates.d.ts +2 -1
  168. package/dist/cjs/src/Templates/SnapTemplates.d.ts.map +1 -1
  169. package/dist/cjs/src/Templates/SnapTemplates.js +63 -1
  170. package/dist/cjs/src/Templates/Stores/LibraryStore.d.ts +4 -0
  171. package/dist/cjs/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  172. package/dist/cjs/src/Templates/Stores/LibraryStore.js +19 -0
  173. package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts +19 -4
  174. package/dist/cjs/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  175. package/dist/cjs/src/Templates/Stores/TemplateStore.js +2 -1
  176. package/dist/cjs/src/Templates/Stores/library/components/Chat.d.ts +2 -0
  177. package/dist/cjs/src/Templates/Stores/library/components/Chat.d.ts.map +1 -0
  178. package/dist/cjs/src/Templates/Stores/library/components/Chat.js +5 -0
  179. package/dist/cjs/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
  180. package/dist/cjs/src/Templates/Stores/library/languages/es.js +5 -0
  181. package/dist/cjs/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
  182. package/dist/cjs/src/Templates/Stores/library/languages/fr.js +5 -0
  183. package/dist/cjs/src/create/createChatController.d.ts +5 -0
  184. package/dist/cjs/src/create/createChatController.d.ts.map +1 -0
  185. package/dist/cjs/src/create/createChatController.js +43 -0
  186. package/dist/cjs/src/setupEvents.d.ts +13 -0
  187. package/dist/cjs/src/setupEvents.d.ts.map +1 -1
  188. package/dist/cjs/src/setupEvents.js +87 -0
  189. package/dist/cjs/src/types.d.ts +15 -3
  190. package/dist/cjs/src/types.d.ts.map +1 -1
  191. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts +1 -1
  192. package/dist/esm/components/src/components/Atoms/Button/Button.d.ts.map +1 -1
  193. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts +7 -0
  194. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.d.ts.map +1 -0
  195. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/ChatLoadingIndicator.js +67 -0
  196. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts +2 -0
  197. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.d.ts.map +1 -0
  198. package/dist/esm/components/src/components/Atoms/ChatLoadingIndicator/index.js +1 -0
  199. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts +1 -0
  200. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.d.ts.map +1 -1
  201. package/dist/esm/components/src/components/Atoms/Dropdown/Dropdown.js +33 -9
  202. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts +21 -0
  203. package/dist/esm/components/src/components/Atoms/Icon/paths.d.ts.map +1 -1
  204. package/dist/esm/components/src/components/Atoms/Icon/paths.js +21 -0
  205. package/dist/esm/components/src/components/Molecules/CalloutBadge/CalloutBadge.js +1 -1
  206. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts +20 -0
  207. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.d.ts.map +1 -0
  208. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/ChatAttachmentContext.js +168 -0
  209. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts +2 -0
  210. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.d.ts.map +1 -0
  211. package/dist/esm/components/src/components/Molecules/ChatAttachmentContext/index.js +1 -0
  212. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts +18 -0
  213. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.d.ts.map +1 -0
  214. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/ChatInspirationResultMessage.js +118 -0
  215. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts +2 -0
  216. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.d.ts.map +1 -0
  217. package/dist/esm/components/src/components/Molecules/ChatInspirationResultMessage/index.js +1 -0
  218. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts +18 -0
  219. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.d.ts.map +1 -0
  220. package/dist/esm/components/src/components/Molecules/ChatMessageText/ChatMessageText.js +164 -0
  221. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts +2 -0
  222. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.d.ts.map +1 -0
  223. package/dist/esm/components/src/components/Molecules/ChatMessageText/index.js +1 -0
  224. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts +15 -0
  225. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.d.ts.map +1 -0
  226. package/dist/esm/components/src/components/Molecules/ChatMessageUser/ChatMessageUser.js +223 -0
  227. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts +2 -0
  228. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.d.ts.map +1 -0
  229. package/dist/esm/components/src/components/Molecules/ChatMessageUser/index.js +1 -0
  230. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts +17 -0
  231. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.d.ts.map +1 -0
  232. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/ChatProductComparisonMessage.js +100 -0
  233. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts +2 -0
  234. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.d.ts.map +1 -0
  235. package/dist/esm/components/src/components/Molecules/ChatProductComparisonMessage/index.js +1 -0
  236. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts +25 -0
  237. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.d.ts.map +1 -0
  238. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/ChatProductQueryMessage.js +464 -0
  239. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts +2 -0
  240. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.d.ts.map +1 -0
  241. package/dist/esm/components/src/components/Molecules/ChatProductQueryMessage/index.js +1 -0
  242. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts +11 -0
  243. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.d.ts.map +1 -0
  244. package/dist/esm/components/src/components/Molecules/ChatResult/ChatResult.js +171 -0
  245. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts +2 -0
  246. package/dist/esm/components/src/components/Molecules/ChatResult/index.d.ts.map +1 -0
  247. package/dist/esm/components/src/components/Molecules/ChatResult/index.js +1 -0
  248. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts +12 -0
  249. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.d.ts.map +1 -0
  250. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/ChatResultsDisplay.js +112 -0
  251. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts +2 -0
  252. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.d.ts.map +1 -0
  253. package/dist/esm/components/src/components/Molecules/ChatResultsDisplay/index.js +1 -0
  254. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts +15 -0
  255. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.d.ts.map +1 -0
  256. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/ChatSuggestedQuestions.js +80 -0
  257. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts +2 -0
  258. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.d.ts.map +1 -0
  259. package/dist/esm/components/src/components/Molecules/ChatSuggestedQuestions/index.js +1 -0
  260. package/dist/esm/components/src/components/Molecules/OverlayBadge/OverlayBadge.js +1 -1
  261. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts +5 -3
  262. package/dist/esm/components/src/components/Molecules/Result/Result.d.ts.map +1 -1
  263. package/dist/esm/components/src/components/Molecules/Result/Result.js +12 -7
  264. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts +6 -1
  265. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.d.ts.map +1 -1
  266. package/dist/esm/components/src/components/Molecules/SearchInput/SearchInput.js +36 -3
  267. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.d.ts.map +1 -1
  268. package/dist/esm/components/src/components/Molecules/Slideout/Slideout.js +30 -12
  269. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts +27 -0
  270. package/dist/esm/components/src/components/Organisms/Chat/Chat.d.ts.map +1 -0
  271. package/dist/esm/components/src/components/Organisms/Chat/Chat.js +721 -0
  272. package/dist/esm/components/src/components/Organisms/Chat/Chat.styles.d.ts +16 -0
  273. package/dist/esm/components/src/components/Organisms/Chat/Chat.styles.d.ts.map +1 -0
  274. package/dist/esm/components/src/components/Organisms/Chat/Chat.styles.js +1105 -0
  275. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts +32 -0
  276. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.d.ts.map +1 -0
  277. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatFileUpload.js +54 -0
  278. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts +40 -0
  279. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.d.ts.map +1 -0
  280. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatGestures.js +81 -0
  281. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts +44 -0
  282. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.d.ts.map +1 -0
  283. package/dist/esm/components/src/components/Organisms/Chat/hooks/useChatOverflow.js +110 -0
  284. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts +2 -0
  285. package/dist/esm/components/src/components/Organisms/Chat/index.d.ts.map +1 -0
  286. package/dist/esm/components/src/components/Organisms/Chat/index.js +1 -0
  287. package/dist/esm/components/src/components/Organisms/Facet/Facet.js +1 -1
  288. package/dist/esm/components/src/components/Organisms/FacetsHorizontal/FacetsHorizontal.js +1 -1
  289. package/dist/esm/components/src/components/Organisms/Results/Results.js +1 -1
  290. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts +1 -1
  291. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.d.ts.map +1 -1
  292. package/dist/esm/components/src/components/Templates/AutocompleteFixed/AutocompleteFixed.js +4 -1
  293. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts +1 -1
  294. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.d.ts.map +1 -1
  295. package/dist/esm/components/src/components/Templates/AutocompleteModal/AutocompleteModal.js +4 -1
  296. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts +1 -1
  297. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.d.ts.map +1 -1
  298. package/dist/esm/components/src/components/Templates/AutocompleteSlideout/AutocompleteSlideout.js +4 -1
  299. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts +12 -0
  300. package/dist/esm/components/src/components/Templates/Chat/Chat.d.ts.map +1 -0
  301. package/dist/esm/components/src/components/Templates/Chat/Chat.js +42 -0
  302. package/dist/esm/components/src/components/Templates/Chat/index.d.ts +2 -0
  303. package/dist/esm/components/src/components/Templates/Chat/index.d.ts.map +1 -0
  304. package/dist/esm/components/src/components/Templates/Chat/index.js +1 -0
  305. package/dist/esm/components/src/index.d.ts +11 -0
  306. package/dist/esm/components/src/index.d.ts.map +1 -1
  307. package/dist/esm/components/src/index.js +11 -0
  308. package/dist/esm/components/src/providers/withTracking.d.ts +2 -2
  309. package/dist/esm/components/src/providers/withTracking.d.ts.map +1 -1
  310. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts +4 -0
  311. package/dist/esm/components/src/themes/base/components/templates/chat.d.ts.map +1 -0
  312. package/dist/esm/components/src/themes/base/components/templates/chat.js +3 -0
  313. package/dist/esm/components/src/themes/base/components/templates/index.d.ts.map +1 -1
  314. package/dist/esm/components/src/themes/base/components/templates/index.js +5 -0
  315. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts +4 -0
  316. package/dist/esm/components/src/themes/bocachica/components/templates/chat.d.ts.map +1 -0
  317. package/dist/esm/components/src/themes/bocachica/components/templates/chat.js +3 -0
  318. package/dist/esm/components/src/themes/bocachica/components/templates/index.d.ts.map +1 -1
  319. package/dist/esm/components/src/themes/bocachica/components/templates/index.js +5 -0
  320. package/dist/esm/components/src/themes/everest/components/templates/chat.d.ts +4 -0
  321. package/dist/esm/components/src/themes/everest/components/templates/chat.d.ts.map +1 -0
  322. package/dist/esm/components/src/themes/everest/components/templates/chat.js +3 -0
  323. package/dist/esm/components/src/themes/everest/components/templates/index.d.ts.map +1 -1
  324. package/dist/esm/components/src/themes/everest/components/templates/index.js +5 -0
  325. package/dist/esm/components/src/themes/matterhorn/components/templates/chat.d.ts +4 -0
  326. package/dist/esm/components/src/themes/matterhorn/components/templates/chat.d.ts.map +1 -0
  327. package/dist/esm/components/src/themes/matterhorn/components/templates/chat.js +3 -0
  328. package/dist/esm/components/src/themes/matterhorn/components/templates/index.d.ts.map +1 -1
  329. package/dist/esm/components/src/themes/matterhorn/components/templates/index.js +5 -0
  330. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts +4 -0
  331. package/dist/esm/components/src/themes/pike/components/templates/chat.d.ts.map +1 -0
  332. package/dist/esm/components/src/themes/pike/components/templates/chat.js +3 -0
  333. package/dist/esm/components/src/themes/pike/components/templates/index.d.ts.map +1 -1
  334. package/dist/esm/components/src/themes/pike/components/templates/index.js +5 -0
  335. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts +4 -0
  336. package/dist/esm/components/src/themes/snapnco/components/templates/chat.d.ts.map +1 -0
  337. package/dist/esm/components/src/themes/snapnco/components/templates/chat.js +3 -0
  338. package/dist/esm/components/src/themes/snapnco/components/templates/index.d.ts.map +1 -1
  339. package/dist/esm/components/src/themes/snapnco/components/templates/index.js +5 -0
  340. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts +4 -0
  341. package/dist/esm/components/src/themes/snappy/components/templates/chat.d.ts.map +1 -0
  342. package/dist/esm/components/src/themes/snappy/components/templates/chat.js +3 -0
  343. package/dist/esm/components/src/themes/snappy/components/templates/index.d.ts.map +1 -1
  344. package/dist/esm/components/src/themes/snappy/components/templates/index.js +5 -0
  345. package/dist/esm/components/src/themes/themeComponents/chat.d.ts +4 -0
  346. package/dist/esm/components/src/themes/themeComponents/chat.d.ts.map +1 -0
  347. package/dist/esm/components/src/themes/themeComponents/chat.js +11 -0
  348. package/dist/esm/components/src/utilities/Colour/Colour.d.ts +11 -0
  349. package/dist/esm/components/src/utilities/Colour/Colour.d.ts.map +1 -1
  350. package/dist/esm/components/src/utilities/Colour/Colour.js +30 -0
  351. package/dist/esm/components/src/utilities/snapify.d.ts +3 -2
  352. package/dist/esm/components/src/utilities/snapify.d.ts.map +1 -1
  353. package/dist/esm/components/src/utilities/snapify.js +29 -2
  354. package/dist/esm/src/Snap.d.ts +2 -1
  355. package/dist/esm/src/Snap.d.ts.map +1 -1
  356. package/dist/esm/src/Snap.js +72 -0
  357. package/dist/esm/src/Templates/SnapTemplates.d.ts +2 -1
  358. package/dist/esm/src/Templates/SnapTemplates.d.ts.map +1 -1
  359. package/dist/esm/src/Templates/SnapTemplates.js +52 -0
  360. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts +4 -0
  361. package/dist/esm/src/Templates/Stores/LibraryStore.d.ts.map +1 -1
  362. package/dist/esm/src/Templates/Stores/LibraryStore.js +6 -0
  363. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts +19 -4
  364. package/dist/esm/src/Templates/Stores/TemplateStore.d.ts.map +1 -1
  365. package/dist/esm/src/Templates/Stores/TemplateStore.js +2 -1
  366. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts +2 -0
  367. package/dist/esm/src/Templates/Stores/library/components/Chat.d.ts.map +1 -0
  368. package/dist/esm/src/Templates/Stores/library/components/Chat.js +1 -0
  369. package/dist/esm/src/Templates/Stores/library/languages/es.d.ts.map +1 -1
  370. package/dist/esm/src/Templates/Stores/library/languages/es.js +5 -0
  371. package/dist/esm/src/Templates/Stores/library/languages/fr.d.ts.map +1 -1
  372. package/dist/esm/src/Templates/Stores/library/languages/fr.js +5 -0
  373. package/dist/esm/src/create/createChatController.d.ts +5 -0
  374. package/dist/esm/src/create/createChatController.d.ts.map +1 -0
  375. package/dist/esm/src/create/createChatController.js +29 -0
  376. package/dist/esm/src/setupEvents.d.ts +13 -0
  377. package/dist/esm/src/setupEvents.d.ts.map +1 -1
  378. package/dist/esm/src/setupEvents.js +40 -0
  379. package/dist/esm/src/types.d.ts +15 -3
  380. package/dist/esm/src/types.d.ts.map +1 -1
  381. package/package.json +13 -12
@@ -0,0 +1,489 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.ChatProductQueryMessage = void 0;
18
+ var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
19
+ var mobx_react_lite_1 = require("mobx-react-lite");
20
+ var react_1 = require("@emotion/react");
21
+ var classnames_1 = __importDefault(require("classnames"));
22
+ var providers_1 = require("../../../providers");
23
+ var utilities_1 = require("../../../utilities");
24
+ var Image_1 = require("../../Atoms/Image");
25
+ var Button_1 = require("../../Atoms/Button");
26
+ var __1 = require("../../..");
27
+ var defaultStyles = function (_a) {
28
+ var primaryColor = _a.primaryColor, primaryColorText = _a.primaryColorText;
29
+ var colorPrimary = primaryColor || '#253B80';
30
+ var colorPrimaryText = primaryColorText || '#fff';
31
+ return (0, react_1.css)({
32
+ display: 'flex',
33
+ flexDirection: 'column',
34
+ gap: '1em',
35
+ '.ss__chat-product-query-message__header': {
36
+ background: new utilities_1.Colour(colorPrimary).lightenHex(0.05),
37
+ padding: '1em',
38
+ display: 'flex',
39
+ flexDirection: 'column',
40
+ '.ss__chat-product-query-message__header__back': {
41
+ display: 'flex',
42
+ alignItems: 'center',
43
+ gap: '0.35em',
44
+ color: colorPrimaryText,
45
+ cursor: 'pointer',
46
+ alignSelf: 'flex-start',
47
+ padding: '0.5em 0',
48
+ fontSize: '0.85em',
49
+ opacity: 0.85,
50
+ background: 'transparent',
51
+ border: 'none',
52
+ font: 'inherit',
53
+ '&:hover': {
54
+ opacity: 1,
55
+ },
56
+ '&:focus-visible': {
57
+ outline: "2px solid ".concat(colorPrimaryText),
58
+ outlineOffset: '2px',
59
+ },
60
+ svg: {
61
+ fill: colorPrimaryText,
62
+ stroke: colorPrimaryText,
63
+ },
64
+ },
65
+ '.ss__price': {
66
+ color: colorPrimaryText,
67
+ },
68
+ '.ss__chat-product-query-message__header__product': {
69
+ display: 'flex',
70
+ gap: '0.75em',
71
+ alignItems: 'center',
72
+ borderRadius: '0.75em',
73
+ padding: '0.75em',
74
+ '.ss__chat-product-query-message__header__product__image': {
75
+ width: '25%',
76
+ objectFit: 'contain',
77
+ flexShrink: 0,
78
+ borderRadius: '0.33em',
79
+ overflow: 'hidden',
80
+ },
81
+ '.ss__chat-product-query-message__header__product__details': {
82
+ display: 'flex',
83
+ flexDirection: 'column',
84
+ gap: '0.2em',
85
+ flex: 1,
86
+ '.ss__chat-product-query-message__header__product__details__name': {
87
+ fontWeight: 'bold',
88
+ fontSize: '0.95em',
89
+ a: {
90
+ color: colorPrimaryText,
91
+ textDecoration: 'none',
92
+ '&:hover': {
93
+ textDecoration: 'underline',
94
+ },
95
+ },
96
+ },
97
+ '.ss__chat-product-query-message__header__product__details__brand': {
98
+ fontSize: '0.8em',
99
+ color: 'rgba(255, 255, 255, 0.7)',
100
+ },
101
+ '.ss__chat-product-query-message__header__product__details__price': {
102
+ fontWeight: 'bold',
103
+ fontSize: '1.1em',
104
+ color: '#D4A843',
105
+ display: 'flex',
106
+ gap: '0.5em',
107
+ alignItems: 'center',
108
+ },
109
+ },
110
+ '.ss__chat-product-query-message__header__product__actions': {
111
+ display: 'flex',
112
+ flexDirection: 'column',
113
+ alignItems: 'stretch',
114
+ alignSelf: 'stretch',
115
+ justifyContent: 'center',
116
+ gap: '0.35em',
117
+ flexShrink: 0,
118
+ '.ss__chat-product-query-message__header__product__actions__go-to-product': {
119
+ a: {
120
+ color: colorPrimaryText,
121
+ opacity: 0.85,
122
+ fontSize: '0.8em',
123
+ textDecoration: 'underline',
124
+ cursor: 'pointer',
125
+ '&:hover': {
126
+ opacity: 1,
127
+ },
128
+ },
129
+ },
130
+ '.ss__chat-product-query-message__header__product__actions__add-to-cart .ss__button': {
131
+ flexDirection: 'row-reverse',
132
+ borderRadius: '0.5em',
133
+ padding: '0.4em 0.75em',
134
+ fontWeight: 'bold',
135
+ border: 'none',
136
+ whiteSpace: 'nowrap',
137
+ cursor: 'pointer',
138
+ fontSize: '0.8em',
139
+ background: '#feeeae',
140
+ color: '#000',
141
+ justifyContent: 'center',
142
+ width: '100%',
143
+ textAlign: 'center',
144
+ svg: {
145
+ fill: '#000',
146
+ stroke: '#000',
147
+ },
148
+ '&:not(.ss__button--disabled):hover': {
149
+ background: '#fde68a',
150
+ },
151
+ },
152
+ '.ss__chat-product-query-message__header__product__actions__show-similar .ss__button, .ss__chat-product-query-message__header__product__actions__discuss-product .ss__button': {
153
+ flexDirection: 'row-reverse',
154
+ borderRadius: '0.5em',
155
+ padding: '0.4em 0.75em',
156
+ fontWeight: 'bold',
157
+ whiteSpace: 'nowrap',
158
+ cursor: 'pointer',
159
+ fontSize: '0.8em',
160
+ background: '#000',
161
+ color: '#fff',
162
+ justifyContent: 'center',
163
+ width: '100%',
164
+ textAlign: 'center',
165
+ svg: {
166
+ fill: '#fff',
167
+ stroke: '#fff',
168
+ },
169
+ },
170
+ },
171
+ },
172
+ },
173
+ '.ss__chat-product-query-message__variants': {
174
+ padding: '0 2em',
175
+ '.ss__chat-product-query-message__variants__label': {
176
+ fontWeight: '600',
177
+ fontSize: '0.9em',
178
+ color: '#374151',
179
+ textTransform: 'uppercase',
180
+ marginBottom: '0.5em',
181
+ },
182
+ '.ss__chat-product-query-message__variants__swatches': {
183
+ display: 'flex',
184
+ flexWrap: 'wrap',
185
+ gap: '0.5em',
186
+ '.ss__chat-product-query-message__variants__swatch': {
187
+ display: 'flex',
188
+ flexDirection: 'column',
189
+ alignItems: 'center',
190
+ gap: '0.25em',
191
+ cursor: 'pointer',
192
+ padding: '0.25em',
193
+ borderRadius: '0.5em',
194
+ border: '2px solid transparent',
195
+ transition: 'border-color 0.15s ease',
196
+ background: 'transparent',
197
+ font: 'inherit',
198
+ color: 'inherit',
199
+ '&:hover': {
200
+ borderColor: colorPrimary,
201
+ },
202
+ '&:focus-visible': {
203
+ outline: "2px solid ".concat(colorPrimary),
204
+ outlineOffset: '2px',
205
+ },
206
+ '&[aria-disabled="true"]': {
207
+ cursor: 'not-allowed',
208
+ },
209
+ '&.ss__chat-product-query-message__variants__swatch--selected': {
210
+ borderColor: colorPrimary,
211
+ borderWidth: '3px',
212
+ padding: '0.15em',
213
+ },
214
+ '&.ss__chat-product-query-message__variants__swatch--unavailable': {
215
+ opacity: 0.4,
216
+ },
217
+ '.ss__chat-product-query-message__variants__swatch__image': {
218
+ width: '48px',
219
+ height: '48px',
220
+ objectFit: 'cover',
221
+ borderRadius: '50%',
222
+ border: '1px solid #E5E7EB',
223
+ },
224
+ '.ss__chat-product-query-message__variants__swatch__value': {
225
+ fontSize: '0.75em',
226
+ color: '#374151',
227
+ textAlign: 'center',
228
+ maxWidth: '60px',
229
+ overflow: 'hidden',
230
+ textOverflow: 'ellipsis',
231
+ whiteSpace: 'nowrap',
232
+ },
233
+ },
234
+ },
235
+ },
236
+ '.ss__chat-product-query-message__section': {
237
+ padding: '0 1em',
238
+ '.ss__chat-product-query-message__section__title': {
239
+ background: colorPrimary,
240
+ color: colorPrimaryText,
241
+ padding: '0.5em 0.75em',
242
+ fontWeight: 'bold',
243
+ fontSize: '0.95em',
244
+ borderRadius: '0.5em 0.5em 0 0',
245
+ },
246
+ '.ss__chat-product-query-message__section__table': {
247
+ width: '100%',
248
+ maxWidth: '100%',
249
+ tableLayout: 'fixed',
250
+ borderCollapse: 'separate',
251
+ borderSpacing: 0,
252
+ fontSize: '0.9em',
253
+ border: "3px solid ".concat(colorPrimary),
254
+ borderTop: 'none',
255
+ borderBottomLeftRadius: '0.5em',
256
+ borderBottomRightRadius: '0.5em',
257
+ overflow: 'hidden',
258
+ tr: {
259
+ borderBottom: '1px solid #E5E7EB',
260
+ },
261
+ 'th, td': {
262
+ padding: '0.6em 0.75em',
263
+ verticalAlign: 'top',
264
+ wordBreak: 'break-word',
265
+ overflowWrap: 'anywhere',
266
+ textAlign: 'left',
267
+ },
268
+ 'th[scope="row"]': {
269
+ fontWeight: '600',
270
+ color: '#374151',
271
+ textTransform: 'uppercase',
272
+ fontSize: '0.85em',
273
+ width: '40%',
274
+ },
275
+ 'td:last-of-type': {
276
+ textAlign: 'right',
277
+ color: '#374151',
278
+ },
279
+ '.ss__chat-product-query-message__section__table__availability--in-stock': {
280
+ color: '#10B981',
281
+ fontWeight: '600',
282
+ },
283
+ '.ss__chat-product-query-message__section__table__availability--out-of-stock': {
284
+ color: '#DC2626',
285
+ fontWeight: '600',
286
+ },
287
+ '.ss__chat-product-query-message__section__table__price': {
288
+ display: 'flex',
289
+ gap: '0.5em',
290
+ alignItems: 'center',
291
+ justifyContent: 'flex-end',
292
+ },
293
+ },
294
+ '.ss__chat-product-query-message__section__description': {
295
+ padding: '0.75em',
296
+ fontSize: '0.9em',
297
+ color: '#374151',
298
+ lineHeight: '1.5',
299
+ border: "3px solid ".concat(colorPrimary),
300
+ borderTop: 'none',
301
+ borderBottomLeftRadius: '0.5em',
302
+ borderBottomRightRadius: '0.5em',
303
+ },
304
+ '.ss__chat-product-query-message__section__features': {
305
+ margin: 0,
306
+ padding: '0.5em 1.25em',
307
+ fontSize: '0.9em',
308
+ li: {
309
+ padding: '0.3em 0',
310
+ color: '#374151',
311
+ },
312
+ },
313
+ },
314
+ });
315
+ };
316
+ // fields that have dedicated rendering in the product card; skip them in the info table
317
+ var CARD_FIELDS = new Set([
318
+ 'name',
319
+ 'brand',
320
+ 'price',
321
+ 'msrp',
322
+ 'imageUrl',
323
+ 'thumbnailImageUrl',
324
+ 'secureImageUrl',
325
+ 'secureThumbnailImageUrl',
326
+ 'url',
327
+ 'addToCartUrl',
328
+ 'uid',
329
+ 'sku',
330
+ 'parentId',
331
+ 'parentImageUrl',
332
+ 'description',
333
+ 'caption',
334
+ 'popularity',
335
+ 'stockMessage',
336
+ ]);
337
+ // preferred ordering for the structured info table - any extras get appended after
338
+ var PREFERRED_INFO_ORDER = ['material', 'fit', 'color', 'sizes', 'size', 'category', 'rating', 'availability'];
339
+ var FEATURE_KEYS = ['features', 'feature_list', 'productFeatures', 'product_features', 'highlights'];
340
+ var formatLabel = function (key) {
341
+ return key
342
+ .replace(/[_-]+/g, ' ')
343
+ .replace(/([a-z])([A-Z])/g, '$1 $2')
344
+ .trim();
345
+ };
346
+ var stripHtml = function (str) { return str.replace(/<[^>]*>/g, ''); };
347
+ var formatValue = function (value) {
348
+ if (Array.isArray(value)) {
349
+ return stripHtml(value.filter(function (v) { return v != null && v !== ''; }).join(', '));
350
+ }
351
+ if (value == null) {
352
+ return '';
353
+ }
354
+ return stripHtml(String(value));
355
+ };
356
+ var collectFeatures = function (display) {
357
+ var attributes = (display === null || display === void 0 ? void 0 : display.attributes) || {};
358
+ for (var _i = 0, FEATURE_KEYS_1 = FEATURE_KEYS; _i < FEATURE_KEYS_1.length; _i++) {
359
+ var key = FEATURE_KEYS_1[_i];
360
+ var raw = attributes[key];
361
+ if (Array.isArray(raw) && raw.length > 0) {
362
+ return raw.map(function (v) { return String(v); }).filter(Boolean);
363
+ }
364
+ if (typeof raw === 'string' && raw.trim()) {
365
+ // allow comma- or newline-separated feature strings
366
+ return raw
367
+ .split(/\r?\n|,/)
368
+ .map(function (v) { return v.trim(); })
369
+ .filter(Boolean);
370
+ }
371
+ }
372
+ return [];
373
+ };
374
+ var collectInfoRows = function (display, displayFields) {
375
+ var _a;
376
+ var core = ((_a = display === null || display === void 0 ? void 0 : display.mappings) === null || _a === void 0 ? void 0 : _a.core) || {};
377
+ var attributes = (display === null || display === void 0 ? void 0 : display.attributes) || {};
378
+ var filterByDisplayFields = displayFields && displayFields.length > 0;
379
+ var displayFieldsLower = filterByDisplayFields ? displayFields.map(function (f) { return f.toLowerCase(); }) : [];
380
+ var merged = {};
381
+ // when displayFields is specified, include matching core fields that are normally skipped
382
+ if (filterByDisplayFields) {
383
+ Object.entries(core).forEach(function (_a) {
384
+ var key = _a[0], value = _a[1];
385
+ if (displayFieldsLower.includes(key.toLowerCase()) && value != null) {
386
+ merged[key] = value;
387
+ }
388
+ });
389
+ }
390
+ // pull selected core fields (rating + availability)
391
+ if (core.rating != null) {
392
+ var rating = core.rating;
393
+ var ratingCount = core.ratingCount;
394
+ merged.rating = ratingCount ? "".concat(rating, "/5.0 (").concat(ratingCount, " reviews)") : "".concat(rating, "/5.0");
395
+ }
396
+ if (core.available != null) {
397
+ merged.availability = core.available ? 'In Stock' : 'Out of Stock';
398
+ }
399
+ // merge product attributes, skipping ones already shown on the card and feature lists
400
+ Object.entries(attributes).forEach(function (_a) {
401
+ var key = _a[0], value = _a[1];
402
+ if (!filterByDisplayFields && CARD_FIELDS.has(key))
403
+ return;
404
+ if (FEATURE_KEYS.includes(key))
405
+ return;
406
+ var formatted = formatValue(value);
407
+ if (!formatted)
408
+ return;
409
+ merged[key] = formatted;
410
+ });
411
+ var seen = new Set();
412
+ var ordered = [];
413
+ PREFERRED_INFO_ORDER.forEach(function (preferred) {
414
+ var match = Object.keys(merged).find(function (k) { return k.toLowerCase() === preferred; });
415
+ if (match && !seen.has(match)) {
416
+ seen.add(match);
417
+ ordered.push({ key: match, rawKey: match, label: formatLabel(match), value: formatValue(merged[match]) });
418
+ }
419
+ });
420
+ Object.keys(merged).forEach(function (key) {
421
+ if (seen.has(key))
422
+ return;
423
+ seen.add(key);
424
+ ordered.push({ key: key, rawKey: key, label: formatLabel(key), value: formatValue(merged[key]) });
425
+ });
426
+ // filter and sort by displayFields order
427
+ if (filterByDisplayFields) {
428
+ var filtered = ordered.filter(function (row) { return displayFieldsLower.includes(row.rawKey.toLowerCase()); });
429
+ filtered.sort(function (a, b) { return displayFieldsLower.indexOf(a.rawKey.toLowerCase()) - displayFieldsLower.indexOf(b.rawKey.toLowerCase()); });
430
+ return filtered;
431
+ }
432
+ return ordered;
433
+ };
434
+ exports.ChatProductQueryMessage = (0, mobx_react_lite_1.observer)(function (properties) {
435
+ var _a, _b;
436
+ var globalTheme = (0, providers_1.useTheme)();
437
+ var globalTreePath = (0, providers_1.useTreePath)();
438
+ var defaultProps = {
439
+ treePath: globalTreePath,
440
+ };
441
+ var props = (0, utilities_1.mergeProps)('chatProductQueryMessage', globalTheme, defaultProps, properties);
442
+ var chatItem = props.chatItem, controller = props.controller, displayFields = props.displayFields, className = props.className, internalClassName = props.internalClassName;
443
+ var styling = (0, utilities_1.mergeStyles)(props, defaultStyles);
444
+ var messageType = chatItem.messageType, sourceProduct = chatItem.sourceProduct;
445
+ if (messageType !== 'productQuery') {
446
+ console.warn('ChatProductQueryMessage received message with unsupported type:', messageType, 'Expected type: productQuery');
447
+ return null;
448
+ }
449
+ var product = controller === null || controller === void 0 ? void 0 : controller.store.productQuickview;
450
+ var productQuickviewError = controller === null || controller === void 0 ? void 0 : controller.store.productQuickviewError;
451
+ var chatMessages = ((_a = controller === null || controller === void 0 ? void 0 : controller.store.currentChat) === null || _a === void 0 ? void 0 : _a.chat) || [];
452
+ var sourceMessage = chatItem.sourceMessageId ? chatMessages.find(function (m) { return m.id === chatItem.sourceMessageId; }) : null;
453
+ var cameFromInspiration = (sourceMessage === null || sourceMessage === void 0 ? void 0 : sourceMessage.messageType) === 'inspirationResult';
454
+ if (!product) {
455
+ return ((0, jsx_runtime_1.jsx)(providers_1.CacheProvider, { children: (0, jsx_runtime_1.jsx)("div", __assign({ className: (0, classnames_1.default)('ss__chat-product-query-message', className, internalClassName) }, styling, { children: (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header'), children: (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product'), children: (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__details'), children: (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__details__name'), children: productQuickviewError || 'Loading product details...' }) }) }) }) })) }));
456
+ }
457
+ var displayed = product.display;
458
+ var displayedCore = ((_b = displayed.mappings) === null || _b === void 0 ? void 0 : _b.core) || {};
459
+ var variants = product.variants;
460
+ var selections = (variants === null || variants === void 0 ? void 0 : variants.selections) || [];
461
+ var displayedData = {
462
+ mappings: displayed.mappings,
463
+ attributes: displayed.attributes || {},
464
+ };
465
+ var allInfoRows = collectInfoRows(displayedData, displayFields);
466
+ var descriptionRow = allInfoRows.find(function (row) { return row.rawKey.toLowerCase() === 'description'; });
467
+ var infoRows = allInfoRows.filter(function (row) { return row.rawKey.toLowerCase() !== 'description'; });
468
+ var features = collectFeatures(displayedData);
469
+ var handleBack = function () {
470
+ var _a;
471
+ (_a = controller === null || controller === void 0 ? void 0 : controller.store.currentChat) === null || _a === void 0 ? void 0 : _a.popProductQueryMessage(chatItem.sourceMessageId);
472
+ controller === null || controller === void 0 ? void 0 : controller.store.clearProductQuickview();
473
+ };
474
+ return ((0, jsx_runtime_1.jsx)(providers_1.CacheProvider, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ className: (0, classnames_1.default)('ss__chat-product-query-message', className, internalClassName) }, styling, { children: [(0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header'), children: [cameFromInspiration && ((0, jsx_runtime_1.jsxs)("button", { type: "button", className: (0, classnames_1.default)('ss__chat-product-query-message__header__back'), "aria-label": "Back to inspiration", onClick: handleBack, children: [(0, jsx_runtime_1.jsx)(__1.Icon, { icon: "angle-left", size: "14px" }), (0, jsx_runtime_1.jsx)("span", { children: "Back to inspiration" })] })), (0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product'), children: [(displayedCore.imageUrl || displayedCore.parentImageUrl) && ((0, jsx_runtime_1.jsx)(Image_1.Image, { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__image'), src: (displayedCore.imageUrl || displayedCore.parentImageUrl), alt: displayedCore.name || '' })), (0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__details'), children: [displayedCore.name && ((0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__details__name'), children: displayedCore.url ? ((0, jsx_runtime_1.jsx)("a", { href: displayedCore.url, onClick: function (e) { return controller === null || controller === void 0 ? void 0 : controller.track.product.click(e, product); }, target: "_blank", rel: "noopener noreferrer", children: displayedCore.name })) : (displayedCore.name) })), displayedCore.brand && ((0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__details__brand'), children: displayedCore.brand })), displayedCore.price != null && ((0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__details__price'), children: [displayedCore.msrp != null && Number(displayedCore.msrp) > Number(displayedCore.price) && ((0, jsx_runtime_1.jsx)(__1.Price, { value: displayedCore.msrp, lineThrough: true })), (0, jsx_runtime_1.jsx)(__1.Price, { value: displayedCore.price })] }))] }), (0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__actions'), children: [displayedCore.url && ((0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__actions__go-to-product'), children: (0, jsx_runtime_1.jsx)("a", { href: displayedCore.url, onClick: function (e) { return controller === null || controller === void 0 ? void 0 : controller.track.product.click(e, product); }, target: "_blank", rel: "noopener noreferrer", children: "Go to product" }) })), (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__actions__add-to-cart'), children: (0, jsx_runtime_1.jsx)(Button_1.Button, { icon: "cart", content: 'Add to Cart', onClick: function () {
475
+ controller === null || controller === void 0 ? void 0 : controller.track.product.addToCart(product);
476
+ controller === null || controller === void 0 ? void 0 : controller.addToCart(product);
477
+ } }) }), (controller === null || controller === void 0 ? void 0 : controller.store.features.similarProducts.enabled) && ((0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__actions__show-similar'), children: (0, jsx_runtime_1.jsx)(Button_1.Button, { icon: "search-thin", content: 'Show Similar', onClick: function () { return controller === null || controller === void 0 ? void 0 : controller.productSimilar(sourceProduct); } }) })), (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__header__product__actions__discuss-product'), children: (0, jsx_runtime_1.jsx)(Button_1.Button, { icon: "chat", content: 'Discuss Product', onClick: function () { return controller === null || controller === void 0 ? void 0 : controller.productQuery(sourceProduct); } }) })] })] })] }), selections.length > 0 && ((0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__variants'), role: "group", "aria-label": "Variant selection", children: selections.map(function (selection) { return ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__variants__label'), id: "ss__chat-pq-variant-".concat(selection.field), children: [formatLabel(selection.field), " (", selection.values.length, ")"] }), (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__variants__swatches'), role: "radiogroup", "aria-labelledby": "ss__chat-pq-variant-".concat(selection.field), children: selection.values.map(function (selectionValue) {
478
+ var _a;
479
+ var isUnavailable = !selectionValue.available;
480
+ var isSelected = ((_a = selection.selected) === null || _a === void 0 ? void 0 : _a.value) === selectionValue.value;
481
+ return ((0, jsx_runtime_1.jsxs)("button", { type: "button", className: (0, classnames_1.default)('ss__chat-product-query-message__variants__swatch', {
482
+ 'ss__chat-product-query-message__variants__swatch--selected': isSelected,
483
+ 'ss__chat-product-query-message__variants__swatch--unavailable': isUnavailable,
484
+ }), title: selectionValue.value, role: "radio", "aria-checked": isSelected, "aria-disabled": isUnavailable, "aria-label": "".concat(formatLabel(selection.field), ": ").concat(selectionValue.value).concat(isUnavailable ? ' (unavailable)' : ''), onClick: function () { return selection.select(selectionValue.value); }, children: [selectionValue.thumbnailImageUrl ? ((0, jsx_runtime_1.jsx)(Image_1.Image, { className: (0, classnames_1.default)('ss__chat-product-query-message__variants__swatch__image'), src: selectionValue.thumbnailImageUrl, alt: selectionValue.value })) : null, (0, jsx_runtime_1.jsx)("span", { className: (0, classnames_1.default)('ss__chat-product-query-message__variants__swatch__value'), children: selectionValue.value })] }, selectionValue.value));
485
+ }) })] }, selection.field)); }) })), infoRows.length > 0 && ((0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section'), children: [(0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section__title'), children: "Product Information" }), (0, jsx_runtime_1.jsx)("table", { className: (0, classnames_1.default)('ss__chat-product-query-message__section__table'), "aria-label": "Product information", children: (0, jsx_runtime_1.jsx)("tbody", { children: infoRows.map(function (row) { return ((0, jsx_runtime_1.jsxs)("tr", { children: [(0, jsx_runtime_1.jsx)("th", { scope: "row", children: row.label }), (0, jsx_runtime_1.jsx)("td", { children: row.rawKey === 'availability' ? ((0, jsx_runtime_1.jsx)("span", { className: (0, classnames_1.default)({
486
+ 'ss__chat-product-query-message__section__table__availability--in-stock': row.value === 'In Stock',
487
+ 'ss__chat-product-query-message__section__table__availability--out-of-stock': row.value === 'Out of Stock',
488
+ }), children: row.value === 'In Stock' ? "\u2713 ".concat(row.value) : row.value })) : row.rawKey.toLowerCase() === 'price' ? ((0, jsx_runtime_1.jsxs)("span", { className: "ss__chat-product-query-message__section__table__price", children: [displayedCore.msrp != null && Number(displayedCore.msrp) > Number(row.value) && ((0, jsx_runtime_1.jsx)(__1.Price, { value: Number(displayedCore.msrp), lineThrough: true })), (0, jsx_runtime_1.jsx)(__1.Price, { value: Number(row.value) })] })) : (row.value) })] }, row.key)); }) }) })] })), descriptionRow && ((0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section'), children: [(0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section__title'), children: "Description" }), (0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section__description'), children: descriptionRow.value })] })), features.length > 0 && ((0, jsx_runtime_1.jsxs)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section'), children: [(0, jsx_runtime_1.jsx)("div", { className: (0, classnames_1.default)('ss__chat-product-query-message__section__title'), children: "Features" }), (0, jsx_runtime_1.jsx)("ul", { className: (0, classnames_1.default)('ss__chat-product-query-message__section__features'), children: features.map(function (feature, idx) { return ((0, jsx_runtime_1.jsx)("li", { children: feature }, idx)); }) })] }))] })) }));
489
+ });
@@ -0,0 +1,2 @@
1
+ export * from './ChatProductQueryMessage';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Molecules/ChatProductQueryMessage/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,17 @@
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("./ChatProductQueryMessage"), exports);
@@ -0,0 +1,11 @@
1
+ import { ComponentProps } from '../../../types';
2
+ import type { ChatController } from '@athoscommerce/snap-controller';
3
+ import type { Product } from '@athoscommerce/snap-store-mobx';
4
+ export declare const ChatResult: (props: ChatResultProps) => import("@emotion/react/jsx-runtime").JSX.Element;
5
+ export interface ChatResultProps extends ComponentProps {
6
+ result: Product;
7
+ controller: ChatController;
8
+ scrollToBottom: () => void;
9
+ trackingRef?: (el: HTMLElement | null) => void;
10
+ }
11
+ //# sourceMappingURL=ChatResult.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChatResult.d.ts","sourceRoot":"","sources":["../../../../../../../components/src/components/Molecules/ChatResult/ChatResult.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,cAAc,EAAe,MAAM,gBAAgB,CAAC;AAK7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAoH9D,eAAO,MAAM,UAAU,8EAkItB,CAAC;AAOF,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACtD,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CAC/C"}