@patternfly/chatbot 6.3.0-prerelease.2 → 6.3.0-prerelease.21

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 (586) hide show
  1. package/dist/cjs/AttachMenu/AttachMenu.d.ts +2 -2
  2. package/dist/cjs/AttachMenu/AttachMenu.js +2 -12
  3. package/dist/cjs/AttachmentEdit/AttachmentEdit.d.ts +14 -2
  4. package/dist/cjs/AttachmentEdit/AttachmentEdit.js +3 -6
  5. package/dist/cjs/AttachmentEdit/AttachmentEdit.test.d.ts +1 -1
  6. package/dist/cjs/AttachmentEdit/AttachmentEdit.test.js +33 -8
  7. package/dist/cjs/Chatbot/Chatbot.d.ts +3 -2
  8. package/dist/cjs/Chatbot/Chatbot.js +5 -10
  9. package/dist/cjs/Chatbot/Chatbot.test.js +13 -9
  10. package/dist/cjs/ChatbotAlert/ChatbotAlert.d.ts +2 -2
  11. package/dist/cjs/ChatbotAlert/ChatbotAlert.js +4 -8
  12. package/dist/cjs/ChatbotAlert/ChatbotAlert.test.js +10 -10
  13. package/dist/cjs/ChatbotContent/ChatbotContent.d.ts +3 -3
  14. package/dist/cjs/ChatbotContent/ChatbotContent.js +2 -8
  15. package/dist/cjs/ChatbotContent/ChatbotContent.test.js +5 -5
  16. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.d.ts +2 -2
  17. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.js +7 -11
  18. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +31 -33
  19. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.d.ts +4 -2
  20. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +17 -34
  21. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +58 -62
  22. package/dist/cjs/ChatbotConversationHistoryNav/EmptyState.d.ts +2 -2
  23. package/dist/cjs/ChatbotConversationHistoryNav/EmptyState.js +2 -9
  24. package/dist/cjs/ChatbotConversationHistoryNav/LoadingState.d.ts +2 -2
  25. package/dist/cjs/ChatbotConversationHistoryNav/LoadingState.js +2 -25
  26. package/dist/cjs/ChatbotFooter/ChatbotFooter.d.ts +4 -3
  27. package/dist/cjs/ChatbotFooter/ChatbotFooter.js +3 -16
  28. package/dist/cjs/ChatbotFooter/ChatbotFooter.test.d.ts +1 -1
  29. package/dist/cjs/ChatbotFooter/ChatbotFooter.test.js +10 -5
  30. package/dist/cjs/ChatbotFooter/ChatbotFooternote.test.js +28 -28
  31. package/dist/cjs/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
  32. package/dist/cjs/ChatbotFooter/ChatbotFootnote.js +10 -23
  33. package/dist/cjs/ChatbotHeader/ChatbotHeader.d.ts +3 -3
  34. package/dist/cjs/ChatbotHeader/ChatbotHeader.js +2 -7
  35. package/dist/cjs/ChatbotHeader/ChatbotHeader.test.js +5 -5
  36. package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
  37. package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.js +2 -5
  38. package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.test.js +5 -5
  39. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +5 -4
  40. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.js +19 -10
  41. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.d.ts +1 -1
  42. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.js +10 -8
  43. package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
  44. package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.js +2 -5
  45. package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.test.js +5 -5
  46. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.d.ts +5 -4
  47. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.js +20 -8
  48. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.d.ts +1 -1
  49. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.js +10 -8
  50. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +7 -3
  51. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
  52. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.d.ts +1 -1
  53. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +22 -19
  54. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +9 -3
  55. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +11 -12
  56. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.d.ts +1 -1
  57. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +20 -17
  58. package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
  59. package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.js +2 -5
  60. package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.test.js +23 -23
  61. package/dist/cjs/ChatbotModal/ChatbotModal.d.ts +5 -2
  62. package/dist/cjs/ChatbotModal/ChatbotModal.js +4 -10
  63. package/dist/cjs/ChatbotModal/ChatbotModal.test.d.ts +1 -0
  64. package/dist/cjs/ChatbotModal/ChatbotModal.test.js +16 -0
  65. package/dist/cjs/ChatbotPopover/ChatbotPopover.d.ts +2 -2
  66. package/dist/cjs/ChatbotPopover/ChatbotPopover.js +2 -8
  67. package/dist/cjs/ChatbotToggle/ChatbotToggle.d.ts +1 -2
  68. package/dist/cjs/ChatbotToggle/ChatbotToggle.js +8 -13
  69. package/dist/cjs/ChatbotToggle/ChatbotToggle.test.js +25 -25
  70. package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +3 -2
  71. package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +7 -21
  72. package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +18 -14
  73. package/dist/cjs/CodeModal/CodeModal.d.ts +10 -2
  74. package/dist/cjs/CodeModal/CodeModal.js +8 -20
  75. package/dist/cjs/CodeModal/CodeModal.test.d.ts +1 -0
  76. package/dist/cjs/CodeModal/CodeModal.test.js +34 -0
  77. package/dist/cjs/Compare/Compare.d.ts +2 -2
  78. package/dist/cjs/Compare/Compare.js +7 -16
  79. package/dist/cjs/Compare/Compare.test.js +7 -9
  80. package/dist/cjs/FileDetails/FileDetails.d.ts +2 -2
  81. package/dist/cjs/FileDetails/FileDetails.js +2 -15
  82. package/dist/cjs/FileDetails/FileDetails.test.js +10 -10
  83. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
  84. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.js +2 -5
  85. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.test.js +21 -21
  86. package/dist/cjs/FileDropZone/FileDropZone.d.ts +9 -2
  87. package/dist/cjs/FileDropZone/FileDropZone.js +6 -9
  88. package/dist/cjs/FileDropZone/FileDropZone.test.js +31 -5
  89. package/dist/cjs/LoadingMessage/LoadingMessage.d.ts +2 -2
  90. package/dist/cjs/LoadingMessage/LoadingMessage.js +2 -10
  91. package/dist/cjs/LoadingMessage/LoadingMessage.test.js +6 -6
  92. package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.d.ts +20 -3
  93. package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.js +22 -16
  94. package/dist/cjs/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.d.ts +62 -0
  95. package/dist/cjs/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.js +136 -0
  96. package/dist/cjs/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
  97. package/dist/cjs/Message/ErrorMessage/ErrorMessage.js +5 -8
  98. package/dist/cjs/Message/ImageMessage/ImageMessage.d.ts +1 -2
  99. package/dist/cjs/Message/ImageMessage/ImageMessage.js +2 -8
  100. package/dist/cjs/Message/LinkMessage/LinkMessage.d.ts +1 -2
  101. package/dist/cjs/Message/LinkMessage/LinkMessage.js +6 -9
  102. package/dist/cjs/Message/ListMessage/ListItemMessage.d.ts +1 -2
  103. package/dist/cjs/Message/ListMessage/ListItemMessage.js +2 -8
  104. package/dist/cjs/Message/ListMessage/OrderedListMessage.d.ts +1 -2
  105. package/dist/cjs/Message/ListMessage/OrderedListMessage.js +2 -9
  106. package/dist/cjs/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
  107. package/dist/cjs/Message/ListMessage/UnorderedListMessage.js +2 -9
  108. package/dist/cjs/Message/Message.d.ts +26 -8
  109. package/dist/cjs/Message/Message.js +50 -72
  110. package/dist/cjs/Message/Message.test.js +123 -81
  111. package/dist/cjs/Message/MessageInput.d.ts +2 -2
  112. package/dist/cjs/Message/MessageInput.js +5 -14
  113. package/dist/cjs/Message/MessageLoading.d.ts +1 -2
  114. package/dist/cjs/Message/MessageLoading.js +3 -8
  115. package/dist/cjs/Message/Plugins/rehypeMoveImagesOutOfParagraphs.d.ts +2 -0
  116. package/dist/cjs/Message/Plugins/rehypeMoveImagesOutOfParagraphs.js +47 -0
  117. package/dist/cjs/Message/QuickResponse/QuickResponse.d.ts +4 -2
  118. package/dist/cjs/Message/QuickResponse/QuickResponse.js +8 -10
  119. package/dist/cjs/Message/QuickStarts/FallbackImg.d.ts +2 -2
  120. package/dist/cjs/Message/QuickStarts/FallbackImg.js +5 -27
  121. package/dist/cjs/Message/QuickStarts/QuickStartTile.d.ts +4 -2
  122. package/dist/cjs/Message/QuickStarts/QuickStartTile.js +8 -44
  123. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
  124. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.js +9 -38
  125. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.test.js +16 -16
  126. package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
  127. package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.js +2 -26
  128. package/dist/cjs/Message/QuickStarts/types.d.ts +4 -3
  129. package/dist/cjs/Message/TableMessage/TableMessage.d.ts +1 -2
  130. package/dist/cjs/Message/TableMessage/TableMessage.js +8 -10
  131. package/dist/cjs/Message/TableMessage/TbodyMessage.d.ts +2 -3
  132. package/dist/cjs/Message/TableMessage/TbodyMessage.js +7 -9
  133. package/dist/cjs/Message/TableMessage/TdMessage.d.ts +1 -2
  134. package/dist/cjs/Message/TableMessage/TdMessage.js +2 -8
  135. package/dist/cjs/Message/TableMessage/ThMessage.d.ts +1 -2
  136. package/dist/cjs/Message/TableMessage/ThMessage.js +2 -8
  137. package/dist/cjs/Message/TableMessage/TheadMessage.d.ts +1 -2
  138. package/dist/cjs/Message/TableMessage/TheadMessage.js +2 -8
  139. package/dist/cjs/Message/TableMessage/TrMessage.d.ts +2 -3
  140. package/dist/cjs/Message/TableMessage/TrMessage.js +8 -10
  141. package/dist/cjs/Message/TextMessage/TextMessage.d.ts +1 -2
  142. package/dist/cjs/Message/TextMessage/TextMessage.js +2 -9
  143. package/dist/cjs/Message/UserFeedback/CloseButton.d.ts +2 -2
  144. package/dist/cjs/Message/UserFeedback/CloseButton.js +2 -8
  145. package/dist/cjs/Message/UserFeedback/UserFeedback.d.ts +2 -2
  146. package/dist/cjs/Message/UserFeedback/UserFeedback.js +13 -24
  147. package/dist/cjs/Message/UserFeedback/UserFeedback.test.js +55 -51
  148. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
  149. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.js +21 -45
  150. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.test.js +83 -89
  151. package/dist/cjs/MessageBar/AttachButton.d.ts +9 -2
  152. package/dist/cjs/MessageBar/AttachButton.js +9 -17
  153. package/dist/cjs/MessageBar/AttachButton.test.js +50 -22
  154. package/dist/cjs/MessageBar/MessageBar.d.ts +16 -3
  155. package/dist/cjs/MessageBar/MessageBar.js +36 -37
  156. package/dist/cjs/MessageBar/MessageBar.test.js +122 -108
  157. package/dist/cjs/MessageBar/MicrophoneButton.d.ts +3 -2
  158. package/dist/cjs/MessageBar/MicrophoneButton.js +8 -15
  159. package/dist/cjs/MessageBar/SendButton.d.ts +4 -2
  160. package/dist/cjs/MessageBar/SendButton.js +4 -12
  161. package/dist/cjs/MessageBar/SendButton.test.js +18 -14
  162. package/dist/cjs/MessageBar/StopButton.d.ts +4 -2
  163. package/dist/cjs/MessageBar/StopButton.js +4 -13
  164. package/dist/cjs/MessageBar/StopButton.test.js +18 -14
  165. package/dist/cjs/MessageBox/JumpButton.d.ts +2 -2
  166. package/dist/cjs/MessageBox/JumpButton.js +2 -10
  167. package/dist/cjs/MessageBox/JumpButton.test.js +10 -10
  168. package/dist/cjs/MessageBox/MessageBox.d.ts +21 -5
  169. package/dist/cjs/MessageBox/MessageBox.js +181 -44
  170. package/dist/cjs/MessageBox/MessageBox.test.js +219 -6
  171. package/dist/cjs/PreviewAttachment/PreviewAttachment.d.ts +14 -2
  172. package/dist/cjs/PreviewAttachment/PreviewAttachment.js +3 -6
  173. package/dist/cjs/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
  174. package/dist/cjs/PreviewAttachment/PreviewAttachment.test.js +34 -12
  175. package/dist/cjs/ResponseActions/ResponseActionButton.d.ts +5 -5
  176. package/dist/cjs/ResponseActions/ResponseActionButton.js +5 -8
  177. package/dist/cjs/ResponseActions/ResponseActionButton.test.js +19 -19
  178. package/dist/cjs/ResponseActions/ResponseActions.d.ts +7 -3
  179. package/dist/cjs/ResponseActions/ResponseActions.js +12 -16
  180. package/dist/cjs/ResponseActions/ResponseActions.test.js +60 -41
  181. package/dist/cjs/Settings/SettingsForm.d.ts +4 -2
  182. package/dist/cjs/Settings/SettingsForm.js +3 -9
  183. package/dist/cjs/Settings/SettingsForm.test.d.ts +1 -1
  184. package/dist/cjs/Settings/SettingsForm.test.js +18 -9
  185. package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
  186. package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -11
  187. package/dist/cjs/SourcesCard/SourcesCard.d.ts +2 -2
  188. package/dist/cjs/SourcesCard/SourcesCard.js +17 -43
  189. package/dist/cjs/SourcesCard/SourcesCard.test.js +60 -60
  190. package/dist/cjs/TermsOfUse/TermsOfUse.d.ts +5 -3
  191. package/dist/cjs/TermsOfUse/TermsOfUse.js +5 -17
  192. package/dist/cjs/TermsOfUse/TermsOfUse.test.js +31 -33
  193. package/dist/css/main.css +228 -15
  194. package/dist/css/main.css.map +1 -1
  195. package/dist/esm/AttachMenu/AttachMenu.d.ts +2 -2
  196. package/dist/esm/AttachMenu/AttachMenu.js +2 -9
  197. package/dist/esm/AttachmentEdit/AttachmentEdit.d.ts +14 -2
  198. package/dist/esm/AttachmentEdit/AttachmentEdit.js +3 -6
  199. package/dist/esm/AttachmentEdit/AttachmentEdit.test.d.ts +1 -1
  200. package/dist/esm/AttachmentEdit/AttachmentEdit.test.js +30 -5
  201. package/dist/esm/Chatbot/Chatbot.d.ts +3 -2
  202. package/dist/esm/Chatbot/Chatbot.js +5 -7
  203. package/dist/esm/Chatbot/Chatbot.test.js +9 -5
  204. package/dist/esm/ChatbotAlert/ChatbotAlert.d.ts +2 -2
  205. package/dist/esm/ChatbotAlert/ChatbotAlert.js +4 -5
  206. package/dist/esm/ChatbotAlert/ChatbotAlert.test.js +4 -4
  207. package/dist/esm/ChatbotContent/ChatbotContent.d.ts +3 -3
  208. package/dist/esm/ChatbotContent/ChatbotContent.js +2 -5
  209. package/dist/esm/ChatbotContent/ChatbotContent.test.js +3 -3
  210. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.d.ts +2 -2
  211. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.js +7 -11
  212. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +8 -10
  213. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.d.ts +4 -2
  214. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +17 -34
  215. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +29 -33
  216. package/dist/esm/ChatbotConversationHistoryNav/EmptyState.d.ts +2 -2
  217. package/dist/esm/ChatbotConversationHistoryNav/EmptyState.js +2 -6
  218. package/dist/esm/ChatbotConversationHistoryNav/LoadingState.d.ts +2 -2
  219. package/dist/esm/ChatbotConversationHistoryNav/LoadingState.js +2 -22
  220. package/dist/esm/ChatbotFooter/ChatbotFooter.d.ts +4 -3
  221. package/dist/esm/ChatbotFooter/ChatbotFooter.js +3 -13
  222. package/dist/esm/ChatbotFooter/ChatbotFooter.test.d.ts +1 -1
  223. package/dist/esm/ChatbotFooter/ChatbotFooter.test.js +8 -3
  224. package/dist/esm/ChatbotFooter/ChatbotFooternote.test.js +5 -5
  225. package/dist/esm/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
  226. package/dist/esm/ChatbotFooter/ChatbotFootnote.js +10 -23
  227. package/dist/esm/ChatbotHeader/ChatbotHeader.d.ts +3 -3
  228. package/dist/esm/ChatbotHeader/ChatbotHeader.js +2 -4
  229. package/dist/esm/ChatbotHeader/ChatbotHeader.test.js +3 -3
  230. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
  231. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.js +2 -2
  232. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.test.js +3 -3
  233. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +5 -4
  234. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.js +20 -8
  235. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.d.ts +1 -1
  236. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.js +8 -3
  237. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
  238. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.js +2 -2
  239. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.test.js +3 -3
  240. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.d.ts +5 -4
  241. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.js +20 -8
  242. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.d.ts +1 -1
  243. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.js +8 -3
  244. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +7 -3
  245. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
  246. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.d.ts +1 -1
  247. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +13 -7
  248. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +9 -3
  249. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +11 -9
  250. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.d.ts +1 -1
  251. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +13 -7
  252. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
  253. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.js +2 -2
  254. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.test.js +12 -12
  255. package/dist/esm/ChatbotModal/ChatbotModal.d.ts +5 -2
  256. package/dist/esm/ChatbotModal/ChatbotModal.js +4 -7
  257. package/dist/esm/ChatbotModal/ChatbotModal.test.d.ts +1 -0
  258. package/dist/esm/ChatbotModal/ChatbotModal.test.js +11 -0
  259. package/dist/esm/ChatbotPopover/ChatbotPopover.d.ts +2 -2
  260. package/dist/esm/ChatbotPopover/ChatbotPopover.js +2 -5
  261. package/dist/esm/ChatbotToggle/ChatbotToggle.d.ts +1 -2
  262. package/dist/esm/ChatbotToggle/ChatbotToggle.js +8 -13
  263. package/dist/esm/ChatbotToggle/ChatbotToggle.test.js +8 -8
  264. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +3 -2
  265. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +7 -18
  266. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +11 -7
  267. package/dist/esm/CodeModal/CodeModal.d.ts +10 -2
  268. package/dist/esm/CodeModal/CodeModal.js +8 -20
  269. package/dist/esm/CodeModal/CodeModal.test.d.ts +1 -0
  270. package/dist/esm/CodeModal/CodeModal.test.js +29 -0
  271. package/dist/esm/Compare/Compare.d.ts +2 -2
  272. package/dist/esm/Compare/Compare.js +7 -13
  273. package/dist/esm/Compare/Compare.test.js +4 -6
  274. package/dist/esm/FileDetails/FileDetails.d.ts +2 -2
  275. package/dist/esm/FileDetails/FileDetails.js +2 -15
  276. package/dist/esm/FileDetails/FileDetails.test.js +4 -4
  277. package/dist/esm/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
  278. package/dist/esm/FileDetailsLabel/FileDetailsLabel.js +2 -5
  279. package/dist/esm/FileDetailsLabel/FileDetailsLabel.test.js +9 -9
  280. package/dist/esm/FileDropZone/FileDropZone.d.ts +9 -2
  281. package/dist/esm/FileDropZone/FileDropZone.js +6 -6
  282. package/dist/esm/FileDropZone/FileDropZone.test.js +29 -3
  283. package/dist/esm/LoadingMessage/LoadingMessage.d.ts +2 -2
  284. package/dist/esm/LoadingMessage/LoadingMessage.js +2 -10
  285. package/dist/esm/LoadingMessage/LoadingMessage.test.js +3 -3
  286. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.d.ts +20 -3
  287. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.js +23 -17
  288. package/dist/esm/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.d.ts +62 -0
  289. package/dist/esm/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.js +130 -0
  290. package/dist/esm/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
  291. package/dist/esm/Message/ErrorMessage/ErrorMessage.js +5 -5
  292. package/dist/esm/Message/ImageMessage/ImageMessage.d.ts +1 -2
  293. package/dist/esm/Message/ImageMessage/ImageMessage.js +2 -5
  294. package/dist/esm/Message/LinkMessage/LinkMessage.d.ts +1 -2
  295. package/dist/esm/Message/LinkMessage/LinkMessage.js +6 -6
  296. package/dist/esm/Message/ListMessage/ListItemMessage.d.ts +1 -2
  297. package/dist/esm/Message/ListMessage/ListItemMessage.js +2 -5
  298. package/dist/esm/Message/ListMessage/OrderedListMessage.d.ts +1 -2
  299. package/dist/esm/Message/ListMessage/OrderedListMessage.js +2 -6
  300. package/dist/esm/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
  301. package/dist/esm/Message/ListMessage/UnorderedListMessage.js +2 -6
  302. package/dist/esm/Message/Message.d.ts +26 -8
  303. package/dist/esm/Message/Message.js +50 -72
  304. package/dist/esm/Message/Message.test.js +123 -81
  305. package/dist/esm/Message/MessageInput.d.ts +2 -2
  306. package/dist/esm/Message/MessageInput.js +5 -11
  307. package/dist/esm/Message/MessageLoading.d.ts +1 -2
  308. package/dist/esm/Message/MessageLoading.js +2 -4
  309. package/dist/esm/Message/Plugins/rehypeMoveImagesOutOfParagraphs.d.ts +2 -0
  310. package/dist/esm/Message/Plugins/rehypeMoveImagesOutOfParagraphs.js +43 -0
  311. package/dist/esm/Message/QuickResponse/QuickResponse.d.ts +4 -2
  312. package/dist/esm/Message/QuickResponse/QuickResponse.js +8 -7
  313. package/dist/esm/Message/QuickStarts/FallbackImg.d.ts +2 -2
  314. package/dist/esm/Message/QuickStarts/FallbackImg.js +5 -4
  315. package/dist/esm/Message/QuickStarts/QuickStartTile.d.ts +4 -2
  316. package/dist/esm/Message/QuickStarts/QuickStartTile.js +8 -21
  317. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
  318. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.js +9 -15
  319. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.test.js +5 -5
  320. package/dist/esm/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
  321. package/dist/esm/Message/QuickStarts/QuickStartTileHeader.js +2 -3
  322. package/dist/esm/Message/QuickStarts/types.d.ts +4 -3
  323. package/dist/esm/Message/TableMessage/TableMessage.d.ts +1 -2
  324. package/dist/esm/Message/TableMessage/TableMessage.js +8 -7
  325. package/dist/esm/Message/TableMessage/TbodyMessage.d.ts +2 -3
  326. package/dist/esm/Message/TableMessage/TbodyMessage.js +7 -6
  327. package/dist/esm/Message/TableMessage/TdMessage.d.ts +1 -2
  328. package/dist/esm/Message/TableMessage/TdMessage.js +2 -5
  329. package/dist/esm/Message/TableMessage/ThMessage.d.ts +1 -2
  330. package/dist/esm/Message/TableMessage/ThMessage.js +2 -5
  331. package/dist/esm/Message/TableMessage/TheadMessage.d.ts +1 -2
  332. package/dist/esm/Message/TableMessage/TheadMessage.js +2 -5
  333. package/dist/esm/Message/TableMessage/TrMessage.d.ts +2 -3
  334. package/dist/esm/Message/TableMessage/TrMessage.js +8 -7
  335. package/dist/esm/Message/TextMessage/TextMessage.d.ts +1 -2
  336. package/dist/esm/Message/TextMessage/TextMessage.js +2 -6
  337. package/dist/esm/Message/UserFeedback/CloseButton.d.ts +2 -2
  338. package/dist/esm/Message/UserFeedback/CloseButton.js +2 -5
  339. package/dist/esm/Message/UserFeedback/UserFeedback.d.ts +2 -2
  340. package/dist/esm/Message/UserFeedback/UserFeedback.js +13 -24
  341. package/dist/esm/Message/UserFeedback/UserFeedback.test.js +24 -20
  342. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
  343. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.js +21 -45
  344. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.test.js +29 -35
  345. package/dist/esm/MessageBar/AttachButton.d.ts +9 -2
  346. package/dist/esm/MessageBar/AttachButton.js +9 -14
  347. package/dist/esm/MessageBar/AttachButton.test.js +44 -16
  348. package/dist/esm/MessageBar/MessageBar.d.ts +16 -3
  349. package/dist/esm/MessageBar/MessageBar.js +34 -35
  350. package/dist/esm/MessageBar/MessageBar.test.js +87 -73
  351. package/dist/esm/MessageBar/MicrophoneButton.d.ts +3 -2
  352. package/dist/esm/MessageBar/MicrophoneButton.js +8 -12
  353. package/dist/esm/MessageBar/SendButton.d.ts +4 -2
  354. package/dist/esm/MessageBar/SendButton.js +4 -9
  355. package/dist/esm/MessageBar/SendButton.test.js +13 -9
  356. package/dist/esm/MessageBar/StopButton.d.ts +4 -2
  357. package/dist/esm/MessageBar/StopButton.js +4 -10
  358. package/dist/esm/MessageBar/StopButton.test.js +13 -9
  359. package/dist/esm/MessageBox/JumpButton.d.ts +2 -2
  360. package/dist/esm/MessageBox/JumpButton.js +2 -7
  361. package/dist/esm/MessageBox/JumpButton.test.js +9 -9
  362. package/dist/esm/MessageBox/MessageBox.d.ts +21 -5
  363. package/dist/esm/MessageBox/MessageBox.js +181 -44
  364. package/dist/esm/MessageBox/MessageBox.test.js +220 -7
  365. package/dist/esm/PreviewAttachment/PreviewAttachment.d.ts +14 -2
  366. package/dist/esm/PreviewAttachment/PreviewAttachment.js +3 -6
  367. package/dist/esm/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
  368. package/dist/esm/PreviewAttachment/PreviewAttachment.test.js +30 -5
  369. package/dist/esm/ResponseActions/ResponseActionButton.d.ts +5 -5
  370. package/dist/esm/ResponseActions/ResponseActionButton.js +5 -5
  371. package/dist/esm/ResponseActions/ResponseActionButton.test.js +7 -7
  372. package/dist/esm/ResponseActions/ResponseActions.d.ts +7 -3
  373. package/dist/esm/ResponseActions/ResponseActions.js +13 -17
  374. package/dist/esm/ResponseActions/ResponseActions.test.js +35 -16
  375. package/dist/esm/Settings/SettingsForm.d.ts +4 -2
  376. package/dist/esm/Settings/SettingsForm.js +3 -6
  377. package/dist/esm/Settings/SettingsForm.test.d.ts +1 -1
  378. package/dist/esm/Settings/SettingsForm.test.js +16 -4
  379. package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
  380. package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -8
  381. package/dist/esm/SourcesCard/SourcesCard.d.ts +2 -2
  382. package/dist/esm/SourcesCard/SourcesCard.js +17 -40
  383. package/dist/esm/SourcesCard/SourcesCard.test.js +19 -19
  384. package/dist/esm/TermsOfUse/TermsOfUse.d.ts +5 -3
  385. package/dist/esm/TermsOfUse/TermsOfUse.js +5 -17
  386. package/dist/esm/TermsOfUse/TermsOfUse.test.js +10 -12
  387. package/dist/tsconfig.tsbuildinfo +1 -1
  388. package/package.json +5 -6
  389. package/patternfly-docs/content/extensions/chatbot/design-guidelines.md +10 -0
  390. package/patternfly-docs/content/extensions/chatbot/examples/Customizing Messages/Customizing Messages.md +51 -0
  391. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachMenu.tsx +9 -9
  392. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentEdit.tsx +14 -5
  393. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentError.tsx +2 -2
  394. package/patternfly-docs/content/extensions/chatbot/examples/Messages/BotMessage.tsx +19 -20
  395. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetails.tsx +2 -2
  396. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetailsLabel.tsx +9 -9
  397. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDropZone.tsx +4 -4
  398. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithAttachment.tsx +7 -7
  399. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithCustomResponseActions.tsx +2 -12
  400. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedback.tsx +37 -4
  401. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedbackTimeout.tsx +3 -3
  402. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickResponses.tsx +26 -2
  403. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickStart.tsx +13 -2
  404. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithResponseActions.tsx +3 -3
  405. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithSources.tsx +24 -3
  406. package/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md +1 -0
  407. package/patternfly-docs/content/extensions/chatbot/examples/Messages/PreviewAttachment.tsx +14 -5
  408. package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessage.tsx +20 -14
  409. package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx +4 -4
  410. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotContainer.tsx +59 -36
  411. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFooter.tsx +2 -2
  412. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFootnote.tsx +2 -2
  413. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderBasic.tsx +10 -13
  414. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawer.tsx +18 -9
  415. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerNavigation.tsx +5 -5
  416. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerResizable.tsx +5 -5
  417. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithActions.tsx +14 -5
  418. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithSelection.tsx +17 -8
  419. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderTitle.tsx +59 -34
  420. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBar.tsx +2 -2
  421. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarAttach.tsx +9 -9
  422. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarDisabled.tsx +3 -3
  423. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarLanguage.tsx +2 -2
  424. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarStop.tsx +2 -2
  425. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotModal.tsx +74 -37
  426. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotToggleBasic.tsx +3 -3
  427. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomeInteraction.tsx +8 -8
  428. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomePrompt.tsx +3 -3
  429. package/patternfly-docs/content/extensions/chatbot/examples/UI/CompactSettings.tsx +282 -0
  430. package/patternfly-docs/content/extensions/chatbot/examples/UI/CustomClosedIcon.tsx +3 -3
  431. package/patternfly-docs/content/extensions/chatbot/examples/UI/Settings.tsx +16 -23
  432. package/patternfly-docs/content/extensions/chatbot/examples/UI/SkipToContent.tsx +5 -5
  433. package/patternfly-docs/content/extensions/chatbot/examples/UI/SquareChatbotToggle.tsx +3 -3
  434. package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUse.tsx +91 -48
  435. package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUseCompact.tsx +179 -0
  436. package/patternfly-docs/content/extensions/chatbot/examples/UI/UI.md +17 -0
  437. package/patternfly-docs/content/extensions/chatbot/examples/demos/AttachmentDemos.md +37 -0
  438. package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.md +9 -1
  439. package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.tsx +19 -25
  440. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachment.tsx +23 -14
  441. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachmentMenu.tsx +14 -14
  442. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotCompact.tsx +475 -0
  443. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotInDrawer.tsx +17 -22
  444. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotScrolling.tsx +536 -0
  445. package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedChatbot.tsx +17 -22
  446. package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedComparisonChatbot.tsx +13 -13
  447. package/patternfly-docs/content/extensions/chatbot/examples/demos/Feedback.tsx +7 -7
  448. package/patternfly-docs/content/extensions/chatbot/img/quick-response-confirmation.svg +67 -0
  449. package/src/AttachMenu/AttachMenu.tsx +2 -2
  450. package/src/AttachmentEdit/AttachmentEdit.test.tsx +46 -2
  451. package/src/AttachmentEdit/AttachmentEdit.tsx +29 -7
  452. package/src/Chatbot/Chatbot.scss +7 -0
  453. package/src/Chatbot/Chatbot.test.tsx +9 -1
  454. package/src/Chatbot/Chatbot.tsx +9 -4
  455. package/src/ChatbotAlert/ChatbotAlert.test.tsx +0 -1
  456. package/src/ChatbotAlert/ChatbotAlert.tsx +2 -2
  457. package/src/ChatbotContent/ChatbotContent.test.tsx +0 -1
  458. package/src/ChatbotContent/ChatbotContent.tsx +3 -3
  459. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.tsx +0 -1
  460. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.tsx +6 -4
  461. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.scss +38 -3
  462. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.tsx +21 -3
  463. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.tsx +17 -8
  464. package/src/ChatbotConversationHistoryNav/EmptyState.tsx +2 -2
  465. package/src/ChatbotConversationHistoryNav/LoadingState.tsx +2 -2
  466. package/src/ChatbotFooter/ChatbotFooter.scss +5 -0
  467. package/src/ChatbotFooter/ChatbotFooter.test.tsx +10 -1
  468. package/src/ChatbotFooter/ChatbotFooter.tsx +6 -4
  469. package/src/ChatbotFooter/ChatbotFooternote.test.tsx +0 -1
  470. package/src/ChatbotFooter/ChatbotFootnote.tsx +6 -4
  471. package/src/ChatbotHeader/ChatbotHeader.scss +25 -0
  472. package/src/ChatbotHeader/ChatbotHeader.test.tsx +0 -1
  473. package/src/ChatbotHeader/ChatbotHeader.tsx +4 -7
  474. package/src/ChatbotHeader/ChatbotHeaderActions.test.tsx +0 -1
  475. package/src/ChatbotHeader/ChatbotHeaderActions.tsx +2 -2
  476. package/src/ChatbotHeader/ChatbotHeaderCloseButton.test.tsx +6 -1
  477. package/src/ChatbotHeader/ChatbotHeaderCloseButton.tsx +17 -10
  478. package/src/ChatbotHeader/ChatbotHeaderMain.test.tsx +0 -1
  479. package/src/ChatbotHeader/ChatbotHeaderMain.tsx +5 -3
  480. package/src/ChatbotHeader/ChatbotHeaderMenu.test.tsx +8 -1
  481. package/src/ChatbotHeader/ChatbotHeaderMenu.tsx +17 -12
  482. package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.tsx +15 -1
  483. package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.tsx +17 -7
  484. package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.tsx +19 -1
  485. package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.tsx +30 -6
  486. package/src/ChatbotHeader/ChatbotHeaderTitle.test.tsx +0 -1
  487. package/src/ChatbotHeader/ChatbotHeaderTitle.tsx +2 -2
  488. package/src/ChatbotModal/ChatbotModal.scss +15 -4
  489. package/src/ChatbotModal/ChatbotModal.test.tsx +58 -0
  490. package/src/ChatbotModal/ChatbotModal.tsx +7 -3
  491. package/src/ChatbotPopover/ChatbotPopover.scss +9 -5
  492. package/src/ChatbotPopover/ChatbotPopover.tsx +2 -2
  493. package/src/ChatbotToggle/ChatbotToggle.test.tsx +0 -1
  494. package/src/ChatbotToggle/ChatbotToggle.tsx +5 -3
  495. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.scss +9 -1
  496. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.tsx +13 -1
  497. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.tsx +15 -4
  498. package/src/ChatbotWelcomePrompt/__snapshots__/ChatbotWelcomePrompt.test.tsx.snap +1 -1
  499. package/src/CodeModal/CodeModal.scss +11 -3
  500. package/src/CodeModal/CodeModal.test.tsx +51 -0
  501. package/src/CodeModal/CodeModal.tsx +24 -10
  502. package/src/Compare/Compare.test.tsx +0 -1
  503. package/src/Compare/Compare.tsx +7 -6
  504. package/src/FileDetails/FileDetails.test.tsx +0 -1
  505. package/src/FileDetails/FileDetails.tsx +2 -2
  506. package/src/FileDetails/__snapshots__/FileDetails.test.tsx.snap +1 -1
  507. package/src/FileDetailsLabel/FileDetailsLabel.test.tsx +0 -1
  508. package/src/FileDetailsLabel/FileDetailsLabel.tsx +1 -1
  509. package/src/FileDetailsLabel/__snapshots__/FileDetailsLabel.test.tsx.snap +1 -1
  510. package/src/FileDropZone/FileDropZone.test.tsx +29 -1
  511. package/src/FileDropZone/FileDropZone.tsx +13 -3
  512. package/src/LoadingMessage/LoadingMessage.test.tsx +0 -1
  513. package/src/LoadingMessage/LoadingMessage.tsx +2 -2
  514. package/src/Message/CodeBlockMessage/CodeBlockMessage.scss +7 -0
  515. package/src/Message/CodeBlockMessage/CodeBlockMessage.tsx +105 -18
  516. package/src/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.tsx +220 -0
  517. package/src/Message/ErrorMessage/ErrorMessage.tsx +0 -1
  518. package/src/Message/ImageMessage/ImageMessage.tsx +1 -2
  519. package/src/Message/LinkMessage/LinkMessage.tsx +0 -1
  520. package/src/Message/ListMessage/ListItemMessage.tsx +0 -1
  521. package/src/Message/ListMessage/OrderedListMessage.tsx +0 -1
  522. package/src/Message/ListMessage/UnorderedListMessage.tsx +0 -1
  523. package/src/Message/Message.scss +27 -0
  524. package/src/Message/Message.test.tsx +70 -6
  525. package/src/Message/Message.tsx +41 -17
  526. package/src/Message/MessageInput.tsx +5 -5
  527. package/src/Message/MessageLoading.tsx +0 -2
  528. package/src/Message/Plugins/rehypeMoveImagesOutOfParagraphs.ts +53 -0
  529. package/src/Message/QuickResponse/QuickResponse.tsx +9 -4
  530. package/src/Message/QuickStarts/FallbackImg.tsx +4 -3
  531. package/src/Message/QuickStarts/QuickStartTile.tsx +8 -4
  532. package/src/Message/QuickStarts/QuickStartTileDescription.test.tsx +0 -1
  533. package/src/Message/QuickStarts/QuickStartTileDescription.tsx +4 -3
  534. package/src/Message/QuickStarts/QuickStartTileHeader.tsx +2 -2
  535. package/src/Message/QuickStarts/types.ts +4 -3
  536. package/src/Message/TableMessage/TableMessage.tsx +4 -4
  537. package/src/Message/TableMessage/TbodyMessage.tsx +3 -3
  538. package/src/Message/TableMessage/TdMessage.tsx +1 -2
  539. package/src/Message/TableMessage/ThMessage.tsx +1 -2
  540. package/src/Message/TableMessage/TheadMessage.tsx +3 -2
  541. package/src/Message/TableMessage/TrMessage.tsx +4 -4
  542. package/src/Message/TextMessage/TextMessage.scss +25 -0
  543. package/src/Message/TextMessage/TextMessage.tsx +1 -2
  544. package/src/Message/UserFeedback/CloseButton.tsx +2 -2
  545. package/src/Message/UserFeedback/UserFeedback.scss +24 -3
  546. package/src/Message/UserFeedback/UserFeedback.test.tsx +13 -1
  547. package/src/Message/UserFeedback/UserFeedback.tsx +12 -8
  548. package/src/Message/UserFeedback/UserFeedbackComplete.test.tsx +4 -1
  549. package/src/Message/UserFeedback/UserFeedbackComplete.tsx +26 -16
  550. package/src/MessageBar/AttachButton.scss +10 -0
  551. package/src/MessageBar/AttachButton.test.tsx +56 -8
  552. package/src/MessageBar/AttachButton.tsx +21 -8
  553. package/src/MessageBar/MessageBar.scss +17 -0
  554. package/src/MessageBar/MessageBar.test.tsx +81 -30
  555. package/src/MessageBar/MessageBar.tsx +60 -25
  556. package/src/MessageBar/MicrophoneButton.scss +10 -0
  557. package/src/MessageBar/MicrophoneButton.tsx +15 -9
  558. package/src/MessageBar/SendButton.scss +10 -0
  559. package/src/MessageBar/SendButton.test.tsx +10 -7
  560. package/src/MessageBar/SendButton.tsx +9 -5
  561. package/src/MessageBar/StopButton.scss +10 -0
  562. package/src/MessageBar/StopButton.test.tsx +10 -7
  563. package/src/MessageBar/StopButton.tsx +9 -5
  564. package/src/MessageBox/JumpButton.test.tsx +4 -5
  565. package/src/MessageBox/JumpButton.tsx +3 -3
  566. package/src/MessageBox/MessageBox.scss +6 -0
  567. package/src/MessageBox/MessageBox.test.tsx +295 -5
  568. package/src/MessageBox/MessageBox.tsx +301 -82
  569. package/src/PreviewAttachment/PreviewAttachment.test.tsx +44 -2
  570. package/src/PreviewAttachment/PreviewAttachment.tsx +29 -7
  571. package/src/ResponseActions/ResponseActionButton.test.tsx +0 -1
  572. package/src/ResponseActions/ResponseActionButton.tsx +6 -5
  573. package/src/ResponseActions/ResponseActions.test.tsx +23 -3
  574. package/src/ResponseActions/ResponseActions.tsx +40 -10
  575. package/src/Settings/Settings.scss +11 -0
  576. package/src/Settings/SettingsForm.test.tsx +17 -1
  577. package/src/Settings/SettingsForm.tsx +8 -3
  578. package/src/SourceDetailsMenuItem/SourceDetailsMenuItem.tsx +2 -2
  579. package/src/SourcesCard/SourcesCard.scss +8 -0
  580. package/src/SourcesCard/SourcesCard.test.tsx +0 -1
  581. package/src/SourcesCard/SourcesCard.tsx +9 -8
  582. package/src/TermsOfUse/TermsOfUse.scss +20 -0
  583. package/src/TermsOfUse/TermsOfUse.test.tsx +0 -1
  584. package/src/TermsOfUse/TermsOfUse.tsx +15 -9
  585. package/tsconfig.cjs.json +0 -1
  586. package/tsconfig.json +3 -3
@@ -0,0 +1,62 @@
1
+ import { Component } from 'react';
2
+ import { PickOptional } from '@patternfly/react-core';
3
+ export declare enum ExpandableSectionVariant {
4
+ default = "default",
5
+ truncate = "truncate"
6
+ }
7
+ /** The main expandable section component. */
8
+ export interface ExpandableSectionProps extends Omit<React.HTMLProps<HTMLDivElement>, 'onToggle'> {
9
+ /** Content rendered inside the expandable section. */
10
+ children?: React.ReactNode;
11
+ /** Additional classes added to the expandable section. */
12
+ className?: string;
13
+ /** Id of the content of the expandable section. When passing in the isDetached property, this
14
+ * property's value should match the contentId property of the expandable section toggle sub-component.
15
+ */
16
+ contentId?: string;
17
+ /** Id of the toggle of the expandable section, which provides an accessible name to the
18
+ * expandable section content via the aria-labelledby attribute. When the isDetached property
19
+ * is also passed in, the value of this property must match the toggleId property of the
20
+ * expandable section toggle sub-component.
21
+ */
22
+ toggleId?: string;
23
+ /** Display size variant. Set to "lg" for disclosure styling. */
24
+ displaySize?: 'default' | 'lg';
25
+ /** Indicates the expandable section has a detached toggle. */
26
+ isDetached?: boolean;
27
+ /** Flag to indicate if the content is expanded. */
28
+ isExpanded?: boolean;
29
+ /** Flag to indicate if the content is indented. */
30
+ isIndented?: boolean;
31
+ /** Flag to indicate the width of the component is limited. Set to "true" for disclosure styling. */
32
+ isWidthLimited?: boolean;
33
+ /** Truncates the expandable content to the specified number of lines when using the
34
+ * "truncate" variant.
35
+ */
36
+ truncateMaxLines?: number;
37
+ /** Determines the variant of the expandable section. When passing in "truncate" as the
38
+ * variant, the expandable content will be truncated after 3 lines by default.
39
+ */
40
+ variant?: 'default' | 'truncate';
41
+ language?: string;
42
+ }
43
+ interface ExpandableSectionState {
44
+ isExpanded: boolean;
45
+ hasToggle: boolean;
46
+ previousWidth: number | undefined;
47
+ }
48
+ declare class ExpandableSectionForSyntaxHighlighter extends Component<ExpandableSectionProps, ExpandableSectionState> {
49
+ static displayName: string;
50
+ constructor(props: ExpandableSectionProps);
51
+ expandableContentRef: import("react").RefObject<HTMLDivElement>;
52
+ observer: any;
53
+ static defaultProps: PickOptional<ExpandableSectionProps>;
54
+ componentDidMount(): void;
55
+ componentDidUpdate(prevProps: ExpandableSectionProps): void;
56
+ componentWillUnmount(): void;
57
+ checkToggleVisibility: () => void;
58
+ resize: () => void;
59
+ handleResize: (...args: any[]) => void;
60
+ render(): import("react/jsx-runtime").JSX.Element;
61
+ }
62
+ export { ExpandableSectionForSyntaxHighlighter };
@@ -0,0 +1,130 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ import { Component, createRef } from 'react';
14
+ import styles from '@patternfly/react-styles/css/components/ExpandableSection/expandable-section';
15
+ import { css } from '@patternfly/react-styles';
16
+ import lineClamp from '@patternfly/react-tokens/dist/esm/c_expandable_section_m_truncate__content_LineClamp';
17
+ import { debounce, getResizeObserver, getUniqueId } from '@patternfly/react-core';
18
+ export var ExpandableSectionVariant;
19
+ (function (ExpandableSectionVariant) {
20
+ ExpandableSectionVariant["default"] = "default";
21
+ ExpandableSectionVariant["truncate"] = "truncate";
22
+ })(ExpandableSectionVariant || (ExpandableSectionVariant = {}));
23
+ const setLineClamp = (element, lines, language, isExpanded) => {
24
+ if (!element || !lines || lines < 1 || typeof isExpanded === 'undefined') {
25
+ return;
26
+ }
27
+ if (language) {
28
+ const selector = `.language-${language.toLowerCase()}`;
29
+ const childElement = element.querySelector(selector);
30
+ if (!childElement) {
31
+ return;
32
+ }
33
+ if (isExpanded) {
34
+ // Reset all truncation-related styles to their default values
35
+ childElement.style.removeProperty('-webkit-line-clamp');
36
+ childElement.style.removeProperty('display');
37
+ childElement.style.removeProperty('-webkit-box-orient');
38
+ childElement.style.removeProperty('overflow');
39
+ }
40
+ else {
41
+ childElement.style.setProperty('-webkit-line-clamp', lines.toString());
42
+ childElement.style.setProperty('display', '-webkit-box');
43
+ childElement.style.setProperty('-webkit-box-orient', 'vertical');
44
+ childElement.style.setProperty('overflow', 'hidden');
45
+ }
46
+ }
47
+ };
48
+ class ExpandableSectionForSyntaxHighlighter extends Component {
49
+ constructor(props) {
50
+ var _a;
51
+ super(props);
52
+ this.expandableContentRef = createRef();
53
+ /* eslint-disable-next-line */
54
+ this.observer = () => { };
55
+ this.checkToggleVisibility = () => {
56
+ var _a;
57
+ if ((_a = this.expandableContentRef) === null || _a === void 0 ? void 0 : _a.current) {
58
+ const maxLines = this.props.truncateMaxLines || parseInt(lineClamp.value);
59
+ const totalLines = this.expandableContentRef.current.scrollHeight /
60
+ parseInt(getComputedStyle(this.expandableContentRef.current).lineHeight);
61
+ this.setState({
62
+ hasToggle: totalLines > maxLines
63
+ });
64
+ }
65
+ };
66
+ this.resize = () => {
67
+ if (this.expandableContentRef.current) {
68
+ const { offsetWidth } = this.expandableContentRef.current;
69
+ if (this.state.previousWidth !== offsetWidth) {
70
+ this.setState({ previousWidth: offsetWidth });
71
+ this.checkToggleVisibility();
72
+ }
73
+ }
74
+ };
75
+ this.handleResize = debounce(this.resize, 250);
76
+ this.state = {
77
+ isExpanded: (_a = props.isExpanded) !== null && _a !== void 0 ? _a : false,
78
+ hasToggle: true,
79
+ previousWidth: undefined
80
+ };
81
+ }
82
+ componentDidMount() {
83
+ if (this.props.variant === ExpandableSectionVariant.truncate) {
84
+ const expandableContent = this.expandableContentRef.current;
85
+ if (expandableContent) {
86
+ this.setState({ previousWidth: expandableContent.offsetWidth });
87
+ this.observer = getResizeObserver(expandableContent, this.handleResize, false);
88
+ if (this.props.truncateMaxLines) {
89
+ setLineClamp(expandableContent, this.props.truncateMaxLines, this.props.language, this.state.isExpanded);
90
+ }
91
+ }
92
+ this.checkToggleVisibility();
93
+ }
94
+ }
95
+ componentDidUpdate(prevProps) {
96
+ if (this.props.variant === ExpandableSectionVariant.truncate &&
97
+ (prevProps.truncateMaxLines !== this.props.truncateMaxLines ||
98
+ prevProps.children !== this.props.children ||
99
+ prevProps.isExpanded !== this.props.isExpanded)) {
100
+ const expandableContent = this.expandableContentRef.current;
101
+ setLineClamp(expandableContent, this.props.truncateMaxLines, this.props.language, this.props.isExpanded);
102
+ this.checkToggleVisibility();
103
+ }
104
+ }
105
+ componentWillUnmount() {
106
+ if (this.props.variant === ExpandableSectionVariant.truncate) {
107
+ this.observer();
108
+ }
109
+ }
110
+ render() {
111
+ const _a = this.props, { className, children, isExpanded, isDetached, displaySize, isWidthLimited, isIndented, contentId, toggleId, variant } = _a, props = __rest(_a, ["className", "children", "isExpanded", "isDetached", "displaySize", "isWidthLimited", "isIndented", "contentId", "toggleId", "variant"]);
112
+ if (isDetached && !toggleId) {
113
+ /* eslint-disable no-console */
114
+ console.warn('ExpandableSection: The toggleId value must be passed in and must match the toggleId of the ExpandableSectionToggle.');
115
+ }
116
+ const uniqueContentId = contentId || getUniqueId('expandable-section-content');
117
+ const uniqueToggleId = toggleId || getUniqueId('expandable-section-toggle');
118
+ return (_jsx("div", Object.assign({ className: css(styles.expandableSection, isExpanded && styles.modifiers.expanded, displaySize === 'lg' && styles.modifiers.displayLg, isWidthLimited && styles.modifiers.limitWidth, isIndented && styles.modifiers.indented, variant === ExpandableSectionVariant.truncate && styles.modifiers.truncate, className) }, props, { children: _jsx("div", { ref: this.expandableContentRef, className: css(styles.expandableSectionContent), hidden: variant !== ExpandableSectionVariant.truncate && !isExpanded, id: uniqueContentId, "aria-labelledby": uniqueToggleId, role: "region", children: children }) })));
119
+ }
120
+ }
121
+ ExpandableSectionForSyntaxHighlighter.displayName = 'ExpandableSection';
122
+ ExpandableSectionForSyntaxHighlighter.defaultProps = {
123
+ className: '',
124
+ isDetached: false,
125
+ displaySize: 'default',
126
+ isWidthLimited: false,
127
+ isIndented: false,
128
+ variant: 'default'
129
+ };
130
+ export { ExpandableSectionForSyntaxHighlighter };
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { AlertProps } from '@patternfly/react-core';
3
- declare const ErrorMessage: ({ title, actionLinks, children, ...props }: AlertProps) => React.JSX.Element;
2
+ declare const ErrorMessage: ({ title, actionLinks, children, ...props }: AlertProps) => import("react/jsx-runtime").JSX.Element;
4
3
  export default ErrorMessage;
@@ -1,6 +1,3 @@
1
- // ============================================================================
2
- // Chatbot Main - Message - Content - Error
3
- // ============================================================================
4
1
  var __rest = (this && this.__rest) || function (s, e) {
5
2
  var t = {};
6
3
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -12,10 +9,13 @@ var __rest = (this && this.__rest) || function (s, e) {
12
9
  }
13
10
  return t;
14
11
  };
15
- import React from 'react';
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ // ============================================================================
14
+ // Chatbot Main - Message - Content - Error
15
+ // ============================================================================
16
16
  import { Alert } from '@patternfly/react-core';
17
17
  const ErrorMessage = (_a) => {
18
18
  var { title, actionLinks, children } = _a, props = __rest(_a, ["title", "actionLinks", "children"]);
19
- return (React.createElement(Alert, Object.assign({ isInline: true, variant: "danger", title: title, actionLinks: actionLinks }, props), children));
19
+ return (_jsx(Alert, Object.assign({ isInline: true, variant: "danger", title: title, actionLinks: actionLinks }, props, { children: children })));
20
20
  };
21
21
  export default ErrorMessage;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { ExtraProps } from 'react-markdown';
3
- declare const ImageMessage: ({ children, ...props }: JSX.IntrinsicElements["img"] & ExtraProps) => React.JSX.Element;
2
+ declare const ImageMessage: ({ children, ...props }: Omit<JSX.IntrinsicElements["img"], "ref"> & ExtraProps) => import("react/jsx-runtime").JSX.Element;
4
3
  export default ImageMessage;
@@ -1,6 +1,3 @@
1
- // ============================================================================
2
- // Chatbot Main - Message - Content - Image
3
- // ============================================================================
4
1
  var __rest = (this && this.__rest) || function (s, e) {
5
2
  var t = {};
6
3
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -12,9 +9,9 @@ var __rest = (this && this.__rest) || function (s, e) {
12
9
  }
13
10
  return t;
14
11
  };
15
- import React from 'react';
12
+ import { jsx as _jsx } from "react/jsx-runtime";
16
13
  const ImageMessage = (_a) => {
17
14
  var { children } = _a, props = __rest(_a, ["children"]);
18
- return (React.createElement("img", Object.assign({ className: "pf-chatbot__message-image" }, props), children));
15
+ return (_jsx("img", Object.assign({ className: "pf-chatbot__message-image" }, props, { children: children })));
19
16
  };
20
17
  export default ImageMessage;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { ButtonProps } from '@patternfly/react-core';
3
- declare const LinkMessage: ({ children, target, href, ...props }: ButtonProps) => React.JSX.Element;
2
+ declare const LinkMessage: ({ children, target, href, ...props }: ButtonProps) => import("react/jsx-runtime").JSX.Element;
4
3
  export default LinkMessage;
@@ -1,6 +1,3 @@
1
- // ============================================================================
2
- // Chatbot Main - Message - Content - Link
3
- // ============================================================================
4
1
  var __rest = (this && this.__rest) || function (s, e) {
5
2
  var t = {};
6
3
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -12,14 +9,17 @@ var __rest = (this && this.__rest) || function (s, e) {
12
9
  }
13
10
  return t;
14
11
  };
15
- import React from 'react';
12
+ import { jsx as _jsx } from "react/jsx-runtime";
13
+ // ============================================================================
14
+ // Chatbot Main - Message - Content - Link
15
+ // ============================================================================
16
16
  import { Button } from '@patternfly/react-core';
17
17
  import { ExternalLinkSquareAltIcon } from '@patternfly/react-icons';
18
18
  const LinkMessage = (_a) => {
19
19
  var { children, target, href } = _a, props = __rest(_a, ["children", "target", "href"]);
20
20
  if (target === '_blank') {
21
- return (React.createElement(Button, Object.assign({ component: "a", variant: "link", href: href, icon: React.createElement(ExternalLinkSquareAltIcon, null), iconPosition: "end", isInline: true, target: target }, props), children));
21
+ return (_jsx(Button, Object.assign({ component: "a", variant: "link", href: href, icon: _jsx(ExternalLinkSquareAltIcon, {}), iconPosition: "end", isInline: true, target: target }, props, { children: children })));
22
22
  }
23
- return (React.createElement(Button, Object.assign({ isInline: true, component: "a", href: href, variant: "link" }, props), children));
23
+ return (_jsx(Button, Object.assign({ isInline: true, component: "a", href: href, variant: "link" }, props, { children: children })));
24
24
  };
25
25
  export default LinkMessage;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { ExtraProps } from 'react-markdown';
3
- declare const ListItemMessage: ({ children }: JSX.IntrinsicElements["li"] & ExtraProps) => React.JSX.Element;
2
+ declare const ListItemMessage: ({ children }: JSX.IntrinsicElements["li"] & ExtraProps) => import("react/jsx-runtime").JSX.Element;
4
3
  export default ListItemMessage;
@@ -1,7 +1,4 @@
1
- // ============================================================================
2
- // Chatbot Main - Message - Content - List
3
- // ============================================================================
4
- import React from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
5
2
  import { ListItem } from '@patternfly/react-core';
6
- const ListItemMessage = ({ children }) => React.createElement(ListItem, null, children);
3
+ const ListItemMessage = ({ children }) => _jsx(ListItem, { children: children });
7
4
  export default ListItemMessage;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { ExtraProps } from 'react-markdown';
3
- declare const OrderedListMessage: ({ children, start }: JSX.IntrinsicElements["ol"] & ExtraProps) => React.JSX.Element;
2
+ declare const OrderedListMessage: ({ children, start }: JSX.IntrinsicElements["ol"] & ExtraProps) => import("react/jsx-runtime").JSX.Element;
4
3
  export default OrderedListMessage;
@@ -1,8 +1,4 @@
1
- // ============================================================================
2
- // Chatbot Main - Message - Content - List
3
- // ============================================================================
4
- import React from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
5
2
  import { List, ListComponent, OrderType } from '@patternfly/react-core';
6
- const OrderedListMessage = ({ children, start }) => (React.createElement("div", { className: "pf-chatbot__message-ordered-list" },
7
- React.createElement(List, { component: ListComponent.ol, type: OrderType.number, start: start }, children)));
3
+ const OrderedListMessage = ({ children, start }) => (_jsx("div", { className: "pf-chatbot__message-ordered-list", children: _jsx(List, { component: ListComponent.ol, type: OrderType.number, start: start, children: children }) }));
8
4
  export default OrderedListMessage;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { ExtraProps } from 'react-markdown';
3
- declare const UnorderedListMessage: ({ children }: JSX.IntrinsicElements["ul"] & ExtraProps) => React.JSX.Element;
2
+ declare const UnorderedListMessage: ({ children }: JSX.IntrinsicElements["ul"] & ExtraProps) => import("react/jsx-runtime").JSX.Element;
4
3
  export default UnorderedListMessage;
@@ -1,8 +1,4 @@
1
- // ============================================================================
2
- // Chatbot Main - Message - Content - List
3
- // ============================================================================
4
- import React from 'react';
1
+ import { jsx as _jsx } from "react/jsx-runtime";
5
2
  import { List } from '@patternfly/react-core';
6
- const UnorderedListMessage = ({ children }) => (React.createElement("div", { className: "pf-chatbot__message-unordered-list" },
7
- React.createElement(List, null, children)));
3
+ const UnorderedListMessage = ({ children }) => (_jsx("div", { className: "pf-chatbot__message-unordered-list", children: _jsx(List, { children: children }) }));
8
4
  export default UnorderedListMessage;
@@ -1,5 +1,6 @@
1
- import React, { ReactNode } from 'react';
2
- import { AlertProps, AvatarProps, ButtonProps, FormProps, LabelGroupProps } from '@patternfly/react-core';
1
+ import { ReactNode } from 'react';
2
+ import type { FunctionComponent, HTMLProps, MouseEvent as ReactMouseEvent, Ref } from 'react';
3
+ import { AlertProps, AvatarProps, ButtonProps, ExpandableSectionProps, ExpandableSectionToggleProps, FormProps, LabelGroupProps } from '@patternfly/react-core';
3
4
  import { ActionProps } from '../ResponseActions/ResponseActions';
4
5
  import { SourcesCardProps } from '../SourcesCard';
5
6
  import { QuickStart, QuickstartAction } from './QuickStarts/types';
@@ -34,7 +35,7 @@ export interface MessageExtraContent {
34
35
  /** Content to display at the end */
35
36
  endContent?: ReactNode;
36
37
  }
37
- export interface MessageProps extends Omit<React.HTMLProps<HTMLDivElement>, 'role'> {
38
+ export interface MessageProps extends Omit<HTMLProps<HTMLDivElement>, 'role'> {
38
39
  /** Unique id for message */
39
40
  id?: string;
40
41
  /** Role of the user sending the message */
@@ -63,9 +64,24 @@ export interface MessageProps extends Omit<React.HTMLProps<HTMLDivElement>, 'rol
63
64
  botWord?: string;
64
65
  /** Label for the English "Loading message," displayed to screenreaders when loading a message */
65
66
  loadingWord?: string;
67
+ /** Props for code blocks */
66
68
  codeBlockProps?: {
69
+ /** Aria label applied to code blocks */
67
70
  'aria-label'?: string;
71
+ /** Class name applied to code blocks */
68
72
  className?: string;
73
+ /** Whether code blocks are expandable */
74
+ isExpandable?: boolean;
75
+ /** Length of text initially shown in expandable code blocks; defaults to 10 characters */
76
+ maxLength?: number;
77
+ /** Additional props passed to expandable section if isExpandable is applied */
78
+ expandableSectionProps?: Omit<ExpandableSectionProps, 'ref'>;
79
+ /** Additional props passed to expandable toggle if isExpandable is applied */
80
+ expandableSectionToggleProps?: ExpandableSectionToggleProps;
81
+ /** Link text applied to expandable toggle when expanded */
82
+ expandedText?: string;
83
+ /** Link text applied to expandable toggle when collapsed */
84
+ collapsedText?: string;
69
85
  };
70
86
  /** Props for quick responses */
71
87
  quickResponses?: QuickResponse[];
@@ -95,7 +111,7 @@ export interface MessageProps extends Omit<React.HTMLProps<HTMLDivElement>, 'rol
95
111
  /** Turns the container into a live region so that changes to content within the Message, such as appending a feedback card, are reliably announced to assistive technology. */
96
112
  isLiveRegion?: boolean;
97
113
  /** Ref applied to message */
98
- innerRef?: React.Ref<HTMLDivElement>;
114
+ innerRef?: Ref<HTMLDivElement>;
99
115
  /** Props for table message. It is important to include a detailed aria-label that describes the purpose of the table. */
100
116
  tableProps?: Required<Pick<TableProps, 'aria-label'>> & TableProps;
101
117
  /** Additional rehype plugins passed from the consumer */
@@ -115,12 +131,14 @@ export interface MessageProps extends Omit<React.HTMLProps<HTMLDivElement>, 'rol
115
131
  /** Label for the English word "Cancel" used in edit mode. */
116
132
  cancelWord?: string;
117
133
  /** Callback function for when edit mode update button is clicked */
118
- onEditUpdate?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
134
+ onEditUpdate?: (event: ReactMouseEvent<HTMLButtonElement, MouseEvent>) => void;
119
135
  /** Callback functionf or when edit cancel update button is clicked */
120
- onEditCancel?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent>) => void;
136
+ onEditCancel?: (event: ReactMouseEvent<HTMLButtonElement, MouseEvent>) => void;
121
137
  /** Props for edit form */
122
138
  editFormProps?: FormProps;
139
+ /** Sets message to compact styling. */
140
+ isCompact?: boolean;
123
141
  }
124
- export declare const MessageBase: React.FunctionComponent<MessageProps>;
125
- declare const Message: React.ForwardRefExoticComponent<Omit<MessageProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
142
+ export declare const MessageBase: FunctionComponent<MessageProps>;
143
+ declare const Message: import("react").ForwardRefExoticComponent<Omit<MessageProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
126
144
  export default Message;
@@ -1,6 +1,3 @@
1
- // ============================================================================
2
- // Chatbot Main - Message
3
- // ============================================================================
4
1
  var __rest = (this && this.__rest) || function (s, e) {
5
2
  var t = {};
6
3
  for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
@@ -12,7 +9,11 @@ var __rest = (this && this.__rest) || function (s, e) {
12
9
  }
13
10
  return t;
14
11
  };
15
- import React from 'react';
12
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
13
+ // ============================================================================
14
+ // Chatbot Main - Message
15
+ // ============================================================================
16
+ import { forwardRef, useEffect, useState } from 'react';
16
17
  import Markdown from 'react-markdown';
17
18
  import remarkGfm from 'remark-gfm';
18
19
  import { Avatar, ContentVariants, Label, Timestamp, Truncate } from '@patternfly/react-core';
@@ -42,14 +43,15 @@ import rehypeSanitize from 'rehype-sanitize';
42
43
  import LinkMessage from './LinkMessage/LinkMessage';
43
44
  import ErrorMessage from './ErrorMessage/ErrorMessage';
44
45
  import MessageInput from './MessageInput';
46
+ import { rehypeMoveImagesOutOfParagraphs } from './Plugins/rehypeMoveImagesOutOfParagraphs';
45
47
  export const MessageBase = (_a) => {
46
- var { role, content, extraContent, name, avatar, timestamp, isLoading, actions, sources, botWord = 'AI', loadingWord = 'Loading message', codeBlockProps, quickResponses, quickResponseContainerProps = { numLabels: 5 }, attachments, hasRoundAvatar = true, avatarProps, quickStarts, userFeedbackForm, userFeedbackComplete, isLiveRegion = true, innerRef, tableProps, openLinkInNewTab = true, additionalRehypePlugins = [], linkProps, error, isEditable, editPlaceholder = 'Edit prompt message...', updateWord = 'Update', cancelWord = 'Cancel', onEditUpdate, onEditCancel, editFormProps } = _a, props = __rest(_a, ["role", "content", "extraContent", "name", "avatar", "timestamp", "isLoading", "actions", "sources", "botWord", "loadingWord", "codeBlockProps", "quickResponses", "quickResponseContainerProps", "attachments", "hasRoundAvatar", "avatarProps", "quickStarts", "userFeedbackForm", "userFeedbackComplete", "isLiveRegion", "innerRef", "tableProps", "openLinkInNewTab", "additionalRehypePlugins", "linkProps", "error", "isEditable", "editPlaceholder", "updateWord", "cancelWord", "onEditUpdate", "onEditCancel", "editFormProps"]);
47
- const [messageText, setMessageText] = React.useState(content);
48
- React.useEffect(() => {
48
+ var { role, content, extraContent, name, avatar, timestamp, isLoading, actions, sources, botWord = 'AI', loadingWord = 'Loading message', codeBlockProps, quickResponses, quickResponseContainerProps = { numLabels: 5 }, attachments, hasRoundAvatar = true, avatarProps, quickStarts, userFeedbackForm, userFeedbackComplete, isLiveRegion = true, innerRef, tableProps, openLinkInNewTab = true, additionalRehypePlugins = [], linkProps, error, isEditable, editPlaceholder = 'Edit prompt message...', updateWord = 'Update', cancelWord = 'Cancel', onEditUpdate, onEditCancel, editFormProps, isCompact } = _a, props = __rest(_a, ["role", "content", "extraContent", "name", "avatar", "timestamp", "isLoading", "actions", "sources", "botWord", "loadingWord", "codeBlockProps", "quickResponses", "quickResponseContainerProps", "attachments", "hasRoundAvatar", "avatarProps", "quickStarts", "userFeedbackForm", "userFeedbackComplete", "isLiveRegion", "innerRef", "tableProps", "openLinkInNewTab", "additionalRehypePlugins", "linkProps", "error", "isEditable", "editPlaceholder", "updateWord", "cancelWord", "onEditUpdate", "onEditCancel", "editFormProps", "isCompact"]);
49
+ const [messageText, setMessageText] = useState(content);
50
+ useEffect(() => {
49
51
  setMessageText(content);
50
52
  }, [content]);
51
53
  const { beforeMainContent, afterMainContent, endContent } = extraContent || {};
52
- let rehypePlugins = [rehypeUnwrapImages];
54
+ let rehypePlugins = [rehypeUnwrapImages, rehypeMoveImagesOutOfParagraphs];
53
55
  if (openLinkInNewTab) {
54
56
  rehypePlugins = rehypePlugins.concat([[rehypeExternalLinks, { target: '_blank' }, rehypeSanitize]]);
55
57
  }
@@ -67,73 +69,49 @@ export const MessageBase = (_a) => {
67
69
  const dateString = timestamp !== null && timestamp !== void 0 ? timestamp : `${date.toLocaleDateString()} ${date.toLocaleTimeString()}`;
68
70
  const renderMessage = () => {
69
71
  if (isLoading) {
70
- return React.createElement(MessageLoading, { loadingWord: loadingWord });
72
+ return _jsx(MessageLoading, { loadingWord: loadingWord });
71
73
  }
72
74
  if (isEditable) {
73
- return (React.createElement(React.Fragment, null,
74
- beforeMainContent && React.createElement(React.Fragment, null, beforeMainContent),
75
- React.createElement(MessageInput, Object.assign({ content: content, editPlaceholder: editPlaceholder, updateWord: updateWord, cancelWord: cancelWord, onEditUpdate: (event, text) => {
76
- onEditUpdate && onEditUpdate(event);
77
- setMessageText(text);
78
- }, onEditCancel: onEditCancel }, editFormProps))));
75
+ return (_jsxs(_Fragment, { children: [beforeMainContent && _jsx(_Fragment, { children: beforeMainContent }), _jsx(MessageInput, Object.assign({ content: content, editPlaceholder: editPlaceholder, updateWord: updateWord, cancelWord: cancelWord, onEditUpdate: (event, value) => {
76
+ onEditUpdate && onEditUpdate(event);
77
+ setMessageText(value);
78
+ }, onEditCancel: onEditCancel }, editFormProps))] }));
79
79
  }
80
- return (React.createElement(React.Fragment, null,
81
- beforeMainContent && React.createElement(React.Fragment, null, beforeMainContent),
82
- error ? (React.createElement(ErrorMessage, Object.assign({}, error))) : (React.createElement(Markdown, { components: {
83
- p: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.p }, props)),
84
- code: (_a) => {
85
- var { children } = _a, props = __rest(_a, ["children"]);
86
- return (React.createElement(CodeBlockMessage, Object.assign({}, props, codeBlockProps), children));
87
- },
88
- h1: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.h1 }, props)),
89
- h2: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.h2 }, props)),
90
- h3: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.h3 }, props)),
91
- h4: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.h4 }, props)),
92
- h5: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.h5 }, props)),
93
- h6: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.h6 }, props)),
94
- blockquote: (props) => React.createElement(TextMessage, Object.assign({ component: ContentVariants.blockquote }, props)),
95
- ul: (props) => React.createElement(UnorderedListMessage, Object.assign({}, props)),
96
- ol: (props) => React.createElement(OrderedListMessage, Object.assign({}, props)),
97
- li: (props) => React.createElement(ListItemMessage, Object.assign({}, props)),
98
- table: (props) => React.createElement(TableMessage, Object.assign({}, props, tableProps)),
99
- tbody: (props) => React.createElement(TbodyMessage, Object.assign({}, props)),
100
- thead: (props) => React.createElement(TheadMessage, Object.assign({}, props)),
101
- tr: (props) => React.createElement(TrMessage, Object.assign({}, props)),
102
- td: (props) => {
103
- // Conflicts with Td type
104
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
105
- const { width } = props, rest = __rest(props, ["width"]);
106
- return React.createElement(TdMessage, Object.assign({}, rest));
107
- },
108
- th: (props) => React.createElement(ThMessage, Object.assign({}, props)),
109
- img: (props) => React.createElement(ImageMessage, Object.assign({}, props)),
110
- a: (props) => (React.createElement(LinkMessage, Object.assign({ href: props.href, rel: props.rel, target: props.target }, linkProps), props.children))
111
- }, remarkPlugins: [remarkGfm], rehypePlugins: rehypePlugins }, messageText))));
80
+ return (_jsxs(_Fragment, { children: [beforeMainContent && _jsx(_Fragment, { children: beforeMainContent }), error ? (_jsx(ErrorMessage, Object.assign({}, error))) : (_jsx(Markdown, { components: {
81
+ p: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.p }, props)),
82
+ code: (_a) => {
83
+ var { children } = _a, props = __rest(_a, ["children"]);
84
+ return (_jsx(CodeBlockMessage, Object.assign({}, props, codeBlockProps, { children: children })));
85
+ },
86
+ h1: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.h1 }, props)),
87
+ h2: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.h2 }, props)),
88
+ h3: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.h3 }, props)),
89
+ h4: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.h4 }, props)),
90
+ h5: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.h5 }, props)),
91
+ h6: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.h6 }, props)),
92
+ blockquote: (props) => _jsx(TextMessage, Object.assign({ component: ContentVariants.blockquote }, props)),
93
+ ul: (props) => _jsx(UnorderedListMessage, Object.assign({}, props)),
94
+ ol: (props) => _jsx(OrderedListMessage, Object.assign({}, props)),
95
+ li: (props) => _jsx(ListItemMessage, Object.assign({}, props)),
96
+ table: (props) => _jsx(TableMessage, Object.assign({}, props, tableProps)),
97
+ tbody: (props) => _jsx(TbodyMessage, Object.assign({}, props)),
98
+ thead: (props) => _jsx(TheadMessage, Object.assign({}, props)),
99
+ tr: (props) => _jsx(TrMessage, Object.assign({}, props)),
100
+ td: (props) => {
101
+ // Conflicts with Td type
102
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
103
+ const { width } = props, rest = __rest(props, ["width"]);
104
+ return _jsx(TdMessage, Object.assign({}, rest));
105
+ },
106
+ th: (props) => _jsx(ThMessage, Object.assign({}, props)),
107
+ img: (props) => _jsx(ImageMessage, Object.assign({}, props)),
108
+ a: (props) => (_jsx(LinkMessage, Object.assign({ href: props.href, rel: props.rel, target: props.target }, linkProps, { children: props.children })))
109
+ }, remarkPlugins: [remarkGfm], rehypePlugins: rehypePlugins, children: messageText }))] }));
112
110
  };
113
- return (React.createElement("section", Object.assign({ "aria-label": `Message from ${role} - ${dateString}`, className: `pf-chatbot__message pf-chatbot__message--${role}`, "aria-live": isLiveRegion ? 'polite' : undefined, "aria-atomic": isLiveRegion ? false : undefined, ref: innerRef }, props),
114
- React.createElement(Avatar, Object.assign({ className: `pf-chatbot__message-avatar ${hasRoundAvatar ? 'pf-chatbot__message-avatar--round' : ''} ${avatarClassName ? avatarClassName : ''}`, src: avatar, alt: "" }, avatarProps)),
115
- React.createElement("div", { className: "pf-chatbot__message-contents" },
116
- React.createElement("div", { className: "pf-chatbot__message-meta" },
117
- name && (React.createElement("span", { className: "pf-chatbot__message-name" },
118
- React.createElement(Truncate, { content: name }))),
119
- role === 'bot' && (React.createElement(Label, { variant: "outline", isCompact: true }, botWord)),
120
- React.createElement(Timestamp, { date: date }, timestamp)),
121
- React.createElement("div", { className: "pf-chatbot__message-response" },
122
- React.createElement("div", { className: "pf-chatbot__message-and-actions" },
123
- renderMessage(),
124
- afterMainContent && React.createElement(React.Fragment, null, afterMainContent),
125
- !isLoading && sources && React.createElement(SourcesCard, Object.assign({}, sources)),
126
- quickStarts && quickStarts.quickStart && (React.createElement(QuickStartTile, { quickStart: quickStarts.quickStart, onSelectQuickStart: quickStarts.onSelectQuickStart, minuteWord: quickStarts.minuteWord, minuteWordPlural: quickStarts.minuteWordPlural, prerequisiteWord: quickStarts.prerequisiteWord, prerequisiteWordPlural: quickStarts.prerequisiteWordPlural, quickStartButtonAriaLabel: quickStarts.quickStartButtonAriaLabel })),
127
- !isLoading && actions && React.createElement(ResponseActions, { actions: actions }),
128
- userFeedbackForm && React.createElement(UserFeedback, Object.assign({}, userFeedbackForm, { timestamp: dateString })),
129
- userFeedbackComplete && React.createElement(UserFeedbackComplete, Object.assign({}, userFeedbackComplete, { timestamp: dateString })),
130
- !isLoading && quickResponses && (React.createElement(QuickResponse, { quickResponses: quickResponses, quickResponseContainerProps: quickResponseContainerProps }))),
131
- attachments && (React.createElement("div", { className: "pf-chatbot__message-attachments-container" }, attachments.map((attachment) => {
132
- var _a;
133
- return (React.createElement("div", { key: (_a = attachment.id) !== null && _a !== void 0 ? _a : attachment.name, className: "pf-chatbot__message-attachment" },
134
- React.createElement(FileDetailsLabel, { fileName: attachment.name, fileId: attachment.id, onClose: attachment.onClose, onClick: attachment.onClick, isLoading: attachment.isLoading, closeButtonAriaLabel: attachment.closeButtonAriaLabel, languageTestId: attachment.languageTestId, spinnerTestId: attachment.spinnerTestId })));
135
- }))),
136
- !isLoading && endContent && React.createElement(React.Fragment, null, endContent)))));
111
+ return (_jsxs("section", Object.assign({ "aria-label": `Message from ${role} - ${dateString}`, className: `pf-chatbot__message pf-chatbot__message--${role}`, "aria-live": isLiveRegion ? 'polite' : undefined, "aria-atomic": isLiveRegion ? false : undefined, ref: innerRef }, props, { children: [_jsx(Avatar, Object.assign({ className: `pf-chatbot__message-avatar ${hasRoundAvatar ? 'pf-chatbot__message-avatar--round' : ''} ${avatarClassName ? avatarClassName : ''}`, src: avatar, alt: "" }, avatarProps)), _jsxs("div", { className: "pf-chatbot__message-contents", children: [_jsxs("div", { className: "pf-chatbot__message-meta", children: [name && (_jsx("span", { className: "pf-chatbot__message-name", children: _jsx(Truncate, { content: name }) })), role === 'bot' && (_jsx(Label, { variant: "outline", isCompact: true, children: botWord })), _jsx(Timestamp, { date: date, children: timestamp })] }), _jsxs("div", { className: "pf-chatbot__message-response", children: [_jsxs("div", { className: "pf-chatbot__message-and-actions", children: [renderMessage(), afterMainContent && _jsx(_Fragment, { children: afterMainContent }), !isLoading && sources && _jsx(SourcesCard, Object.assign({}, sources, { isCompact: isCompact })), quickStarts && quickStarts.quickStart && (_jsx(QuickStartTile, { quickStart: quickStarts.quickStart, onSelectQuickStart: quickStarts.onSelectQuickStart, minuteWord: quickStarts.minuteWord, minuteWordPlural: quickStarts.minuteWordPlural, prerequisiteWord: quickStarts.prerequisiteWord, prerequisiteWordPlural: quickStarts.prerequisiteWordPlural, quickStartButtonAriaLabel: quickStarts.quickStartButtonAriaLabel, isCompact: isCompact })), !isLoading && actions && _jsx(ResponseActions, { actions: actions }), userFeedbackForm && _jsx(UserFeedback, Object.assign({}, userFeedbackForm, { timestamp: dateString, isCompact: isCompact })), userFeedbackComplete && (_jsx(UserFeedbackComplete, Object.assign({}, userFeedbackComplete, { timestamp: dateString, isCompact: isCompact }))), !isLoading && quickResponses && (_jsx(QuickResponse, { quickResponses: quickResponses, quickResponseContainerProps: quickResponseContainerProps, isCompact: isCompact }))] }), attachments && (_jsx("div", { className: "pf-chatbot__message-attachments-container", children: attachments.map((attachment) => {
112
+ var _a;
113
+ return (_jsx("div", { className: "pf-chatbot__message-attachment", children: _jsx(FileDetailsLabel, { fileName: attachment.name, fileId: attachment.id, onClose: attachment.onClose, onClick: attachment.onClick, isLoading: attachment.isLoading, closeButtonAriaLabel: attachment.closeButtonAriaLabel, languageTestId: attachment.languageTestId, spinnerTestId: attachment.spinnerTestId }) }, (_a = attachment.id) !== null && _a !== void 0 ? _a : attachment.name));
114
+ }) })), !isLoading && endContent && _jsx(_Fragment, { children: endContent })] })] })] })));
137
115
  };
138
- const Message = React.forwardRef((props, ref) => (React.createElement(MessageBase, Object.assign({ innerRef: ref }, props))));
116
+ const Message = forwardRef((props, ref) => (_jsx(MessageBase, Object.assign({ innerRef: ref }, props))));
139
117
  export default Message;