@patternfly/chatbot 6.3.0-prerelease.9 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (564) 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 +12 -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 +1 -2
  8. package/dist/cjs/Chatbot/Chatbot.js +4 -9
  9. package/dist/cjs/Chatbot/Chatbot.test.js +11 -11
  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 +2 -2
  20. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +16 -33
  21. package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +56 -64
  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 +3 -3
  27. package/dist/cjs/ChatbotFooter/ChatbotFooter.js +2 -15
  28. package/dist/cjs/ChatbotFooter/ChatbotFooter.test.js +7 -7
  29. package/dist/cjs/ChatbotFooter/ChatbotFooternote.test.js +28 -28
  30. package/dist/cjs/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
  31. package/dist/cjs/ChatbotFooter/ChatbotFootnote.js +10 -23
  32. package/dist/cjs/ChatbotHeader/ChatbotHeader.d.ts +3 -3
  33. package/dist/cjs/ChatbotHeader/ChatbotHeader.js +2 -7
  34. package/dist/cjs/ChatbotHeader/ChatbotHeader.test.js +5 -5
  35. package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
  36. package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.js +2 -5
  37. package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.test.js +5 -5
  38. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +1 -2
  39. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.js +5 -10
  40. package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.js +7 -10
  41. package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
  42. package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.js +2 -5
  43. package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.test.js +5 -5
  44. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.d.ts +2 -2
  45. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.js +5 -7
  46. package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.js +7 -10
  47. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +6 -3
  48. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
  49. package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +19 -21
  50. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +8 -3
  51. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +11 -12
  52. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +17 -19
  53. package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
  54. package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.js +2 -5
  55. package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.test.js +23 -23
  56. package/dist/cjs/ChatbotModal/ChatbotModal.d.ts +2 -2
  57. package/dist/cjs/ChatbotModal/ChatbotModal.js +3 -9
  58. package/dist/cjs/ChatbotModal/ChatbotModal.test.js +4 -16
  59. package/dist/cjs/ChatbotPopover/ChatbotPopover.d.ts +2 -2
  60. package/dist/cjs/ChatbotPopover/ChatbotPopover.js +2 -8
  61. package/dist/cjs/ChatbotToggle/ChatbotToggle.d.ts +1 -2
  62. package/dist/cjs/ChatbotToggle/ChatbotToggle.js +8 -13
  63. package/dist/cjs/ChatbotToggle/ChatbotToggle.test.js +25 -25
  64. package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +2 -2
  65. package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +6 -20
  66. package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +16 -16
  67. package/dist/cjs/CodeModal/CodeModal.d.ts +8 -2
  68. package/dist/cjs/CodeModal/CodeModal.js +8 -20
  69. package/dist/cjs/CodeModal/CodeModal.test.js +23 -4
  70. package/dist/cjs/Compare/Compare.d.ts +2 -2
  71. package/dist/cjs/Compare/Compare.js +7 -16
  72. package/dist/cjs/Compare/Compare.test.js +7 -9
  73. package/dist/cjs/FileDetails/FileDetails.d.ts +2 -2
  74. package/dist/cjs/FileDetails/FileDetails.js +2 -15
  75. package/dist/cjs/FileDetails/FileDetails.test.js +10 -10
  76. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
  77. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.js +2 -5
  78. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.test.js +21 -21
  79. package/dist/cjs/FileDropZone/FileDropZone.d.ts +23 -2
  80. package/dist/cjs/FileDropZone/FileDropZone.js +11 -9
  81. package/dist/cjs/FileDropZone/FileDropZone.test.js +86 -5
  82. package/dist/cjs/LoadingMessage/LoadingMessage.d.ts +2 -2
  83. package/dist/cjs/LoadingMessage/LoadingMessage.js +2 -10
  84. package/dist/cjs/LoadingMessage/LoadingMessage.test.js +6 -6
  85. package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.d.ts +20 -3
  86. package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.js +34 -16
  87. package/dist/cjs/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.d.ts +62 -0
  88. package/dist/cjs/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.js +139 -0
  89. package/dist/cjs/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
  90. package/dist/cjs/Message/ErrorMessage/ErrorMessage.js +5 -8
  91. package/dist/cjs/Message/ImageMessage/ImageMessage.d.ts +1 -2
  92. package/dist/cjs/Message/ImageMessage/ImageMessage.js +2 -8
  93. package/dist/cjs/Message/LinkMessage/LinkMessage.d.ts +1 -2
  94. package/dist/cjs/Message/LinkMessage/LinkMessage.js +6 -9
  95. package/dist/cjs/Message/ListMessage/ListItemMessage.d.ts +1 -2
  96. package/dist/cjs/Message/ListMessage/ListItemMessage.js +2 -8
  97. package/dist/cjs/Message/ListMessage/OrderedListMessage.d.ts +1 -2
  98. package/dist/cjs/Message/ListMessage/OrderedListMessage.js +2 -9
  99. package/dist/cjs/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
  100. package/dist/cjs/Message/ListMessage/UnorderedListMessage.js +2 -9
  101. package/dist/cjs/Message/Message.d.ts +24 -8
  102. package/dist/cjs/Message/Message.js +49 -71
  103. package/dist/cjs/Message/Message.test.js +112 -82
  104. package/dist/cjs/Message/MessageInput.d.ts +2 -2
  105. package/dist/cjs/Message/MessageInput.js +5 -14
  106. package/dist/cjs/Message/MessageLoading.d.ts +1 -2
  107. package/dist/cjs/Message/MessageLoading.js +3 -8
  108. package/dist/cjs/Message/Plugins/index.d.ts +1 -0
  109. package/dist/cjs/Message/Plugins/index.js +5 -0
  110. package/dist/cjs/Message/Plugins/rehypeCodeBlockToggle.d.ts +2 -0
  111. package/dist/cjs/Message/Plugins/rehypeCodeBlockToggle.js +24 -0
  112. package/dist/cjs/Message/Plugins/rehypeMoveImagesOutOfParagraphs.d.ts +2 -0
  113. package/dist/cjs/Message/Plugins/rehypeMoveImagesOutOfParagraphs.js +47 -0
  114. package/dist/cjs/Message/QuickResponse/QuickResponse.d.ts +2 -2
  115. package/dist/cjs/Message/QuickResponse/QuickResponse.js +7 -9
  116. package/dist/cjs/Message/QuickStarts/FallbackImg.d.ts +2 -2
  117. package/dist/cjs/Message/QuickStarts/FallbackImg.js +5 -27
  118. package/dist/cjs/Message/QuickStarts/QuickStartTile.d.ts +2 -2
  119. package/dist/cjs/Message/QuickStarts/QuickStartTile.js +7 -43
  120. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
  121. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.js +9 -38
  122. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.test.js +16 -16
  123. package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
  124. package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.js +2 -26
  125. package/dist/cjs/Message/QuickStarts/types.d.ts +4 -3
  126. package/dist/cjs/Message/TableMessage/TableMessage.d.ts +1 -2
  127. package/dist/cjs/Message/TableMessage/TableMessage.js +8 -10
  128. package/dist/cjs/Message/TableMessage/TbodyMessage.d.ts +2 -3
  129. package/dist/cjs/Message/TableMessage/TbodyMessage.js +7 -9
  130. package/dist/cjs/Message/TableMessage/TdMessage.d.ts +1 -2
  131. package/dist/cjs/Message/TableMessage/TdMessage.js +2 -8
  132. package/dist/cjs/Message/TableMessage/ThMessage.d.ts +1 -2
  133. package/dist/cjs/Message/TableMessage/ThMessage.js +2 -8
  134. package/dist/cjs/Message/TableMessage/TheadMessage.d.ts +1 -2
  135. package/dist/cjs/Message/TableMessage/TheadMessage.js +2 -8
  136. package/dist/cjs/Message/TableMessage/TrMessage.d.ts +2 -3
  137. package/dist/cjs/Message/TableMessage/TrMessage.js +8 -10
  138. package/dist/cjs/Message/TextMessage/TextMessage.d.ts +1 -2
  139. package/dist/cjs/Message/TextMessage/TextMessage.js +2 -9
  140. package/dist/cjs/Message/UserFeedback/CloseButton.d.ts +2 -2
  141. package/dist/cjs/Message/UserFeedback/CloseButton.js +2 -8
  142. package/dist/cjs/Message/UserFeedback/UserFeedback.d.ts +2 -2
  143. package/dist/cjs/Message/UserFeedback/UserFeedback.js +12 -23
  144. package/dist/cjs/Message/UserFeedback/UserFeedback.test.js +53 -53
  145. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
  146. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.js +20 -44
  147. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.test.js +81 -91
  148. package/dist/cjs/Message/index.d.ts +1 -0
  149. package/dist/cjs/Message/index.js +3 -1
  150. package/dist/cjs/MessageBar/AttachButton.d.ts +25 -2
  151. package/dist/cjs/MessageBar/AttachButton.js +10 -20
  152. package/dist/cjs/MessageBar/AttachButton.test.js +102 -24
  153. package/dist/cjs/MessageBar/MessageBar.d.ts +31 -3
  154. package/dist/cjs/MessageBar/MessageBar.js +30 -32
  155. package/dist/cjs/MessageBar/MessageBar.test.js +122 -108
  156. package/dist/cjs/MessageBar/MicrophoneButton.d.ts +2 -2
  157. package/dist/cjs/MessageBar/MicrophoneButton.js +7 -14
  158. package/dist/cjs/MessageBar/SendButton.d.ts +3 -2
  159. package/dist/cjs/MessageBar/SendButton.js +3 -11
  160. package/dist/cjs/MessageBar/SendButton.test.js +15 -15
  161. package/dist/cjs/MessageBar/StopButton.d.ts +3 -2
  162. package/dist/cjs/MessageBar/StopButton.js +3 -12
  163. package/dist/cjs/MessageBar/StopButton.test.js +15 -15
  164. package/dist/cjs/MessageBox/JumpButton.d.ts +2 -2
  165. package/dist/cjs/MessageBox/JumpButton.js +2 -10
  166. package/dist/cjs/MessageBox/JumpButton.test.js +10 -10
  167. package/dist/cjs/MessageBox/MessageBox.d.ts +21 -5
  168. package/dist/cjs/MessageBox/MessageBox.js +170 -45
  169. package/dist/cjs/MessageBox/MessageBox.test.js +219 -6
  170. package/dist/cjs/PreviewAttachment/PreviewAttachment.d.ts +12 -2
  171. package/dist/cjs/PreviewAttachment/PreviewAttachment.js +3 -6
  172. package/dist/cjs/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
  173. package/dist/cjs/PreviewAttachment/PreviewAttachment.test.js +34 -12
  174. package/dist/cjs/ResponseActions/ResponseActionButton.d.ts +5 -5
  175. package/dist/cjs/ResponseActions/ResponseActionButton.js +5 -8
  176. package/dist/cjs/ResponseActions/ResponseActionButton.test.js +19 -19
  177. package/dist/cjs/ResponseActions/ResponseActions.d.ts +7 -3
  178. package/dist/cjs/ResponseActions/ResponseActions.js +39 -18
  179. package/dist/cjs/ResponseActions/ResponseActions.test.js +120 -41
  180. package/dist/cjs/Settings/SettingsForm.d.ts +2 -2
  181. package/dist/cjs/Settings/SettingsForm.js +2 -8
  182. package/dist/cjs/Settings/SettingsForm.test.js +9 -12
  183. package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
  184. package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -11
  185. package/dist/cjs/SourcesCard/SourcesCard.d.ts +12 -3
  186. package/dist/cjs/SourcesCard/SourcesCard.js +17 -42
  187. package/dist/cjs/SourcesCard/SourcesCard.test.js +70 -60
  188. package/dist/cjs/TermsOfUse/TermsOfUse.d.ts +3 -3
  189. package/dist/cjs/TermsOfUse/TermsOfUse.js +4 -16
  190. package/dist/cjs/TermsOfUse/TermsOfUse.test.js +31 -33
  191. package/dist/css/main.css +15 -7
  192. package/dist/css/main.css.map +1 -1
  193. package/dist/esm/AttachMenu/AttachMenu.d.ts +2 -2
  194. package/dist/esm/AttachMenu/AttachMenu.js +2 -9
  195. package/dist/esm/AttachmentEdit/AttachmentEdit.d.ts +12 -2
  196. package/dist/esm/AttachmentEdit/AttachmentEdit.js +3 -6
  197. package/dist/esm/AttachmentEdit/AttachmentEdit.test.d.ts +1 -1
  198. package/dist/esm/AttachmentEdit/AttachmentEdit.test.js +30 -5
  199. package/dist/esm/Chatbot/Chatbot.d.ts +1 -2
  200. package/dist/esm/Chatbot/Chatbot.js +4 -6
  201. package/dist/esm/Chatbot/Chatbot.test.js +6 -6
  202. package/dist/esm/ChatbotAlert/ChatbotAlert.d.ts +2 -2
  203. package/dist/esm/ChatbotAlert/ChatbotAlert.js +4 -5
  204. package/dist/esm/ChatbotAlert/ChatbotAlert.test.js +4 -4
  205. package/dist/esm/ChatbotContent/ChatbotContent.d.ts +3 -3
  206. package/dist/esm/ChatbotContent/ChatbotContent.js +2 -5
  207. package/dist/esm/ChatbotContent/ChatbotContent.test.js +3 -3
  208. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.d.ts +2 -2
  209. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.js +7 -11
  210. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +8 -10
  211. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.d.ts +2 -2
  212. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +16 -33
  213. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +26 -34
  214. package/dist/esm/ChatbotConversationHistoryNav/EmptyState.d.ts +2 -2
  215. package/dist/esm/ChatbotConversationHistoryNav/EmptyState.js +2 -6
  216. package/dist/esm/ChatbotConversationHistoryNav/LoadingState.d.ts +2 -2
  217. package/dist/esm/ChatbotConversationHistoryNav/LoadingState.js +2 -22
  218. package/dist/esm/ChatbotFooter/ChatbotFooter.d.ts +3 -3
  219. package/dist/esm/ChatbotFooter/ChatbotFooter.js +2 -12
  220. package/dist/esm/ChatbotFooter/ChatbotFooter.test.js +4 -4
  221. package/dist/esm/ChatbotFooter/ChatbotFooternote.test.js +5 -5
  222. package/dist/esm/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
  223. package/dist/esm/ChatbotFooter/ChatbotFootnote.js +10 -23
  224. package/dist/esm/ChatbotHeader/ChatbotHeader.d.ts +3 -3
  225. package/dist/esm/ChatbotHeader/ChatbotHeader.js +2 -4
  226. package/dist/esm/ChatbotHeader/ChatbotHeader.test.js +3 -3
  227. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
  228. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.js +2 -2
  229. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.test.js +3 -3
  230. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +1 -2
  231. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.js +5 -7
  232. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.js +4 -4
  233. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
  234. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.js +2 -2
  235. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.test.js +3 -3
  236. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.d.ts +2 -2
  237. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.js +5 -7
  238. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.js +4 -4
  239. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +6 -3
  240. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
  241. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +9 -8
  242. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +8 -3
  243. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +11 -9
  244. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +9 -8
  245. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
  246. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.js +2 -2
  247. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.test.js +12 -12
  248. package/dist/esm/ChatbotModal/ChatbotModal.d.ts +2 -2
  249. package/dist/esm/ChatbotModal/ChatbotModal.js +3 -6
  250. package/dist/esm/ChatbotModal/ChatbotModal.test.js +2 -14
  251. package/dist/esm/ChatbotPopover/ChatbotPopover.d.ts +2 -2
  252. package/dist/esm/ChatbotPopover/ChatbotPopover.js +2 -5
  253. package/dist/esm/ChatbotToggle/ChatbotToggle.d.ts +1 -2
  254. package/dist/esm/ChatbotToggle/ChatbotToggle.js +8 -13
  255. package/dist/esm/ChatbotToggle/ChatbotToggle.test.js +8 -8
  256. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +2 -2
  257. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +6 -17
  258. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +8 -8
  259. package/dist/esm/CodeModal/CodeModal.d.ts +8 -2
  260. package/dist/esm/CodeModal/CodeModal.js +8 -20
  261. package/dist/esm/CodeModal/CodeModal.test.js +22 -3
  262. package/dist/esm/Compare/Compare.d.ts +2 -2
  263. package/dist/esm/Compare/Compare.js +7 -13
  264. package/dist/esm/Compare/Compare.test.js +4 -6
  265. package/dist/esm/FileDetails/FileDetails.d.ts +2 -2
  266. package/dist/esm/FileDetails/FileDetails.js +2 -15
  267. package/dist/esm/FileDetails/FileDetails.test.js +4 -4
  268. package/dist/esm/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
  269. package/dist/esm/FileDetailsLabel/FileDetailsLabel.js +2 -5
  270. package/dist/esm/FileDetailsLabel/FileDetailsLabel.test.js +9 -9
  271. package/dist/esm/FileDropZone/FileDropZone.d.ts +23 -2
  272. package/dist/esm/FileDropZone/FileDropZone.js +11 -6
  273. package/dist/esm/FileDropZone/FileDropZone.test.js +84 -3
  274. package/dist/esm/LoadingMessage/LoadingMessage.d.ts +2 -2
  275. package/dist/esm/LoadingMessage/LoadingMessage.js +2 -10
  276. package/dist/esm/LoadingMessage/LoadingMessage.test.js +3 -3
  277. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.d.ts +20 -3
  278. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.js +35 -17
  279. package/dist/esm/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.d.ts +62 -0
  280. package/dist/esm/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.js +133 -0
  281. package/dist/esm/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
  282. package/dist/esm/Message/ErrorMessage/ErrorMessage.js +5 -5
  283. package/dist/esm/Message/ImageMessage/ImageMessage.d.ts +1 -2
  284. package/dist/esm/Message/ImageMessage/ImageMessage.js +2 -5
  285. package/dist/esm/Message/LinkMessage/LinkMessage.d.ts +1 -2
  286. package/dist/esm/Message/LinkMessage/LinkMessage.js +6 -6
  287. package/dist/esm/Message/ListMessage/ListItemMessage.d.ts +1 -2
  288. package/dist/esm/Message/ListMessage/ListItemMessage.js +2 -5
  289. package/dist/esm/Message/ListMessage/OrderedListMessage.d.ts +1 -2
  290. package/dist/esm/Message/ListMessage/OrderedListMessage.js +2 -6
  291. package/dist/esm/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
  292. package/dist/esm/Message/ListMessage/UnorderedListMessage.js +2 -6
  293. package/dist/esm/Message/Message.d.ts +24 -8
  294. package/dist/esm/Message/Message.js +49 -71
  295. package/dist/esm/Message/Message.test.js +112 -82
  296. package/dist/esm/Message/MessageInput.d.ts +2 -2
  297. package/dist/esm/Message/MessageInput.js +5 -11
  298. package/dist/esm/Message/MessageLoading.d.ts +1 -2
  299. package/dist/esm/Message/MessageLoading.js +2 -4
  300. package/dist/esm/Message/Plugins/index.d.ts +1 -0
  301. package/dist/esm/Message/Plugins/index.js +1 -0
  302. package/dist/esm/Message/Plugins/rehypeCodeBlockToggle.d.ts +2 -0
  303. package/dist/esm/Message/Plugins/rehypeCodeBlockToggle.js +20 -0
  304. package/dist/esm/Message/Plugins/rehypeMoveImagesOutOfParagraphs.d.ts +2 -0
  305. package/dist/esm/Message/Plugins/rehypeMoveImagesOutOfParagraphs.js +43 -0
  306. package/dist/esm/Message/QuickResponse/QuickResponse.d.ts +2 -2
  307. package/dist/esm/Message/QuickResponse/QuickResponse.js +7 -6
  308. package/dist/esm/Message/QuickStarts/FallbackImg.d.ts +2 -2
  309. package/dist/esm/Message/QuickStarts/FallbackImg.js +5 -4
  310. package/dist/esm/Message/QuickStarts/QuickStartTile.d.ts +2 -2
  311. package/dist/esm/Message/QuickStarts/QuickStartTile.js +7 -20
  312. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
  313. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.js +9 -15
  314. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.test.js +5 -5
  315. package/dist/esm/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
  316. package/dist/esm/Message/QuickStarts/QuickStartTileHeader.js +2 -3
  317. package/dist/esm/Message/QuickStarts/types.d.ts +4 -3
  318. package/dist/esm/Message/TableMessage/TableMessage.d.ts +1 -2
  319. package/dist/esm/Message/TableMessage/TableMessage.js +8 -7
  320. package/dist/esm/Message/TableMessage/TbodyMessage.d.ts +2 -3
  321. package/dist/esm/Message/TableMessage/TbodyMessage.js +7 -6
  322. package/dist/esm/Message/TableMessage/TdMessage.d.ts +1 -2
  323. package/dist/esm/Message/TableMessage/TdMessage.js +2 -5
  324. package/dist/esm/Message/TableMessage/ThMessage.d.ts +1 -2
  325. package/dist/esm/Message/TableMessage/ThMessage.js +2 -5
  326. package/dist/esm/Message/TableMessage/TheadMessage.d.ts +1 -2
  327. package/dist/esm/Message/TableMessage/TheadMessage.js +2 -5
  328. package/dist/esm/Message/TableMessage/TrMessage.d.ts +2 -3
  329. package/dist/esm/Message/TableMessage/TrMessage.js +8 -7
  330. package/dist/esm/Message/TextMessage/TextMessage.d.ts +1 -2
  331. package/dist/esm/Message/TextMessage/TextMessage.js +2 -6
  332. package/dist/esm/Message/UserFeedback/CloseButton.d.ts +2 -2
  333. package/dist/esm/Message/UserFeedback/CloseButton.js +2 -5
  334. package/dist/esm/Message/UserFeedback/UserFeedback.d.ts +2 -2
  335. package/dist/esm/Message/UserFeedback/UserFeedback.js +12 -23
  336. package/dist/esm/Message/UserFeedback/UserFeedback.test.js +21 -21
  337. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
  338. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.js +20 -44
  339. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.test.js +26 -36
  340. package/dist/esm/Message/index.d.ts +1 -0
  341. package/dist/esm/Message/index.js +1 -0
  342. package/dist/esm/MessageBar/AttachButton.d.ts +25 -2
  343. package/dist/esm/MessageBar/AttachButton.js +10 -17
  344. package/dist/esm/MessageBar/AttachButton.test.js +95 -17
  345. package/dist/esm/MessageBar/MessageBar.d.ts +31 -3
  346. package/dist/esm/MessageBar/MessageBar.js +28 -30
  347. package/dist/esm/MessageBar/MessageBar.test.js +87 -73
  348. package/dist/esm/MessageBar/MicrophoneButton.d.ts +2 -2
  349. package/dist/esm/MessageBar/MicrophoneButton.js +7 -11
  350. package/dist/esm/MessageBar/SendButton.d.ts +3 -2
  351. package/dist/esm/MessageBar/SendButton.js +3 -8
  352. package/dist/esm/MessageBar/SendButton.test.js +9 -9
  353. package/dist/esm/MessageBar/StopButton.d.ts +3 -2
  354. package/dist/esm/MessageBar/StopButton.js +3 -9
  355. package/dist/esm/MessageBar/StopButton.test.js +9 -9
  356. package/dist/esm/MessageBox/JumpButton.d.ts +2 -2
  357. package/dist/esm/MessageBox/JumpButton.js +2 -7
  358. package/dist/esm/MessageBox/JumpButton.test.js +9 -9
  359. package/dist/esm/MessageBox/MessageBox.d.ts +21 -5
  360. package/dist/esm/MessageBox/MessageBox.js +170 -45
  361. package/dist/esm/MessageBox/MessageBox.test.js +220 -7
  362. package/dist/esm/PreviewAttachment/PreviewAttachment.d.ts +12 -2
  363. package/dist/esm/PreviewAttachment/PreviewAttachment.js +3 -6
  364. package/dist/esm/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
  365. package/dist/esm/PreviewAttachment/PreviewAttachment.test.js +30 -5
  366. package/dist/esm/ResponseActions/ResponseActionButton.d.ts +5 -5
  367. package/dist/esm/ResponseActions/ResponseActionButton.js +5 -5
  368. package/dist/esm/ResponseActions/ResponseActionButton.test.js +7 -7
  369. package/dist/esm/ResponseActions/ResponseActions.d.ts +7 -3
  370. package/dist/esm/ResponseActions/ResponseActions.js +40 -19
  371. package/dist/esm/ResponseActions/ResponseActions.test.js +95 -16
  372. package/dist/esm/Settings/SettingsForm.d.ts +2 -2
  373. package/dist/esm/Settings/SettingsForm.js +2 -5
  374. package/dist/esm/Settings/SettingsForm.test.js +6 -6
  375. package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
  376. package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -8
  377. package/dist/esm/SourcesCard/SourcesCard.d.ts +12 -3
  378. package/dist/esm/SourcesCard/SourcesCard.js +17 -39
  379. package/dist/esm/SourcesCard/SourcesCard.test.js +29 -19
  380. package/dist/esm/TermsOfUse/TermsOfUse.d.ts +3 -3
  381. package/dist/esm/TermsOfUse/TermsOfUse.js +4 -16
  382. package/dist/esm/TermsOfUse/TermsOfUse.test.js +10 -12
  383. package/dist/tsconfig.tsbuildinfo +1 -1
  384. package/package.json +5 -6
  385. package/patternfly-docs/content/extensions/chatbot/design-guidelines.md +10 -0
  386. package/patternfly-docs/content/extensions/chatbot/examples/Customizing Messages/Customizing Messages.md +51 -0
  387. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachMenu.tsx +9 -9
  388. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentEdit.tsx +5 -5
  389. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentError.tsx +2 -2
  390. package/patternfly-docs/content/extensions/chatbot/examples/Messages/BotMessage.tsx +24 -20
  391. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetails.tsx +2 -2
  392. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetailsLabel.tsx +9 -9
  393. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDropZone.tsx +4 -4
  394. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithAttachment.tsx +7 -7
  395. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithClickedResponseActions.tsx +25 -0
  396. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithCustomResponseActions.tsx +3 -12
  397. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedback.tsx +4 -4
  398. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedbackTimeout.tsx +3 -3
  399. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickResponses.tsx +2 -2
  400. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickStart.tsx +2 -2
  401. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithResponseActions.tsx +3 -3
  402. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithSources.tsx +3 -3
  403. package/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md +19 -0
  404. package/patternfly-docs/content/extensions/chatbot/examples/Messages/PreviewAttachment.tsx +5 -5
  405. package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessage.tsx +25 -14
  406. package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx +4 -4
  407. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotContainer.tsx +59 -36
  408. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFooter.tsx +2 -2
  409. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFootnote.tsx +2 -2
  410. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderBasic.tsx +10 -13
  411. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawer.tsx +10 -10
  412. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerNavigation.tsx +5 -5
  413. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerResizable.tsx +5 -5
  414. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithActions.tsx +6 -6
  415. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithSelection.tsx +7 -7
  416. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderTitle.tsx +59 -34
  417. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBar.tsx +2 -2
  418. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarAttach.tsx +9 -9
  419. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarDisabled.tsx +3 -3
  420. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarLanguage.tsx +2 -2
  421. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarStop.tsx +2 -2
  422. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotModal.tsx +74 -37
  423. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotToggleBasic.tsx +3 -3
  424. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomeInteraction.tsx +8 -8
  425. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomePrompt.tsx +3 -3
  426. package/patternfly-docs/content/extensions/chatbot/examples/UI/CompactSettings.tsx +16 -23
  427. package/patternfly-docs/content/extensions/chatbot/examples/UI/CustomClosedIcon.tsx +3 -3
  428. package/patternfly-docs/content/extensions/chatbot/examples/UI/Settings.tsx +16 -23
  429. package/patternfly-docs/content/extensions/chatbot/examples/UI/SkipToContent.tsx +5 -5
  430. package/patternfly-docs/content/extensions/chatbot/examples/UI/SquareChatbotToggle.tsx +3 -3
  431. package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUse.tsx +91 -48
  432. package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUseCompact.tsx +82 -39
  433. package/patternfly-docs/content/extensions/chatbot/examples/UI/UI.md +3 -0
  434. package/patternfly-docs/content/extensions/chatbot/examples/demos/AttachmentDemos.md +37 -0
  435. package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.md +1 -0
  436. package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.tsx +19 -25
  437. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachment.tsx +42 -15
  438. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachmentMenu.tsx +15 -14
  439. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotCompact.tsx +19 -25
  440. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotInDrawer.tsx +17 -22
  441. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotScrolling.tsx +536 -0
  442. package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedChatbot.tsx +17 -22
  443. package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedComparisonChatbot.tsx +13 -13
  444. package/patternfly-docs/content/extensions/chatbot/examples/demos/Feedback.tsx +7 -7
  445. package/patternfly-docs/content/extensions/chatbot/img/quick-response-confirmation.svg +67 -0
  446. package/src/AttachMenu/AttachMenu.tsx +2 -2
  447. package/src/AttachmentEdit/AttachmentEdit.test.tsx +46 -2
  448. package/src/AttachmentEdit/AttachmentEdit.tsx +25 -7
  449. package/src/Chatbot/Chatbot.test.tsx +0 -1
  450. package/src/Chatbot/Chatbot.tsx +5 -3
  451. package/src/ChatbotAlert/ChatbotAlert.test.tsx +0 -1
  452. package/src/ChatbotAlert/ChatbotAlert.tsx +2 -2
  453. package/src/ChatbotContent/ChatbotContent.test.tsx +0 -1
  454. package/src/ChatbotContent/ChatbotContent.tsx +3 -3
  455. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.tsx +0 -1
  456. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.tsx +6 -4
  457. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.tsx +3 -3
  458. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.tsx +8 -6
  459. package/src/ChatbotConversationHistoryNav/EmptyState.tsx +2 -2
  460. package/src/ChatbotConversationHistoryNav/LoadingState.tsx +2 -2
  461. package/src/ChatbotFooter/ChatbotFooter.test.tsx +0 -1
  462. package/src/ChatbotFooter/ChatbotFooter.tsx +3 -3
  463. package/src/ChatbotFooter/ChatbotFooternote.test.tsx +0 -1
  464. package/src/ChatbotFooter/ChatbotFootnote.tsx +6 -4
  465. package/src/ChatbotHeader/ChatbotHeader.test.tsx +0 -1
  466. package/src/ChatbotHeader/ChatbotHeader.tsx +3 -6
  467. package/src/ChatbotHeader/ChatbotHeaderActions.test.tsx +0 -1
  468. package/src/ChatbotHeader/ChatbotHeaderActions.tsx +2 -2
  469. package/src/ChatbotHeader/ChatbotHeaderCloseButton.test.tsx +0 -1
  470. package/src/ChatbotHeader/ChatbotHeaderCloseButton.tsx +5 -4
  471. package/src/ChatbotHeader/ChatbotHeaderMain.test.tsx +0 -1
  472. package/src/ChatbotHeader/ChatbotHeaderMain.tsx +2 -2
  473. package/src/ChatbotHeader/ChatbotHeaderMenu.test.tsx +0 -1
  474. package/src/ChatbotHeader/ChatbotHeaderMenu.tsx +7 -7
  475. package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.tsx +9 -1
  476. package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.tsx +12 -5
  477. package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.tsx +9 -1
  478. package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.tsx +26 -6
  479. package/src/ChatbotHeader/ChatbotHeaderTitle.test.tsx +0 -1
  480. package/src/ChatbotHeader/ChatbotHeaderTitle.tsx +2 -2
  481. package/src/ChatbotModal/ChatbotModal.test.tsx +0 -1
  482. package/src/ChatbotModal/ChatbotModal.tsx +2 -2
  483. package/src/ChatbotPopover/ChatbotPopover.tsx +3 -3
  484. package/src/ChatbotToggle/ChatbotToggle.test.tsx +0 -1
  485. package/src/ChatbotToggle/ChatbotToggle.tsx +5 -3
  486. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.tsx +0 -1
  487. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.tsx +2 -2
  488. package/src/CodeModal/CodeModal.test.tsx +29 -2
  489. package/src/CodeModal/CodeModal.tsx +18 -8
  490. package/src/Compare/Compare.test.tsx +0 -1
  491. package/src/Compare/Compare.tsx +7 -6
  492. package/src/FileDetails/FileDetails.test.tsx +0 -1
  493. package/src/FileDetails/FileDetails.tsx +1 -1
  494. package/src/FileDetailsLabel/FileDetailsLabel.test.tsx +0 -1
  495. package/src/FileDetailsLabel/FileDetailsLabel.tsx +1 -1
  496. package/src/FileDropZone/FileDropZone.test.tsx +112 -1
  497. package/src/FileDropZone/FileDropZone.tsx +44 -4
  498. package/src/LoadingMessage/LoadingMessage.test.tsx +0 -1
  499. package/src/LoadingMessage/LoadingMessage.tsx +2 -2
  500. package/src/Message/CodeBlockMessage/CodeBlockMessage.scss +7 -0
  501. package/src/Message/CodeBlockMessage/CodeBlockMessage.tsx +126 -18
  502. package/src/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.tsx +223 -0
  503. package/src/Message/ErrorMessage/ErrorMessage.tsx +0 -1
  504. package/src/Message/ImageMessage/ImageMessage.tsx +1 -2
  505. package/src/Message/LinkMessage/LinkMessage.tsx +0 -1
  506. package/src/Message/ListMessage/ListItemMessage.tsx +0 -1
  507. package/src/Message/ListMessage/OrderedListMessage.tsx +0 -1
  508. package/src/Message/ListMessage/UnorderedListMessage.tsx +0 -1
  509. package/src/Message/Message.test.tsx +49 -6
  510. package/src/Message/Message.tsx +31 -14
  511. package/src/Message/MessageInput.tsx +5 -5
  512. package/src/Message/MessageLoading.tsx +0 -2
  513. package/src/Message/Plugins/index.ts +1 -0
  514. package/src/Message/Plugins/rehypeCodeBlockToggle.ts +24 -0
  515. package/src/Message/Plugins/rehypeMoveImagesOutOfParagraphs.ts +53 -0
  516. package/src/Message/QuickResponse/QuickResponse.tsx +4 -3
  517. package/src/Message/QuickStarts/FallbackImg.tsx +4 -3
  518. package/src/Message/QuickStarts/QuickStartTile.tsx +3 -3
  519. package/src/Message/QuickStarts/QuickStartTileDescription.test.tsx +0 -1
  520. package/src/Message/QuickStarts/QuickStartTileDescription.tsx +4 -3
  521. package/src/Message/QuickStarts/QuickStartTileHeader.tsx +2 -2
  522. package/src/Message/QuickStarts/types.ts +4 -3
  523. package/src/Message/TableMessage/TableMessage.tsx +4 -4
  524. package/src/Message/TableMessage/TbodyMessage.tsx +3 -3
  525. package/src/Message/TableMessage/TdMessage.tsx +1 -2
  526. package/src/Message/TableMessage/ThMessage.tsx +1 -2
  527. package/src/Message/TableMessage/TheadMessage.tsx +3 -2
  528. package/src/Message/TableMessage/TrMessage.tsx +4 -4
  529. package/src/Message/TextMessage/TextMessage.scss +2 -5
  530. package/src/Message/TextMessage/TextMessage.tsx +1 -2
  531. package/src/Message/UserFeedback/CloseButton.tsx +2 -2
  532. package/src/Message/UserFeedback/UserFeedback.test.tsx +0 -1
  533. package/src/Message/UserFeedback/UserFeedback.tsx +8 -6
  534. package/src/Message/UserFeedback/UserFeedbackComplete.test.tsx +0 -1
  535. package/src/Message/UserFeedback/UserFeedbackComplete.tsx +16 -14
  536. package/src/Message/index.ts +1 -0
  537. package/src/MessageBar/AttachButton.test.tsx +127 -8
  538. package/src/MessageBar/AttachButton.tsx +49 -6
  539. package/src/MessageBar/MessageBar.test.tsx +81 -30
  540. package/src/MessageBar/MessageBar.tsx +85 -19
  541. package/src/MessageBar/MicrophoneButton.tsx +10 -7
  542. package/src/MessageBar/SendButton.test.tsx +5 -6
  543. package/src/MessageBar/SendButton.tsx +4 -3
  544. package/src/MessageBar/StopButton.test.tsx +5 -6
  545. package/src/MessageBar/StopButton.tsx +4 -3
  546. package/src/MessageBox/JumpButton.test.tsx +4 -5
  547. package/src/MessageBox/JumpButton.tsx +3 -3
  548. package/src/MessageBox/MessageBox.test.tsx +295 -5
  549. package/src/MessageBox/MessageBox.tsx +301 -84
  550. package/src/PreviewAttachment/PreviewAttachment.test.tsx +44 -2
  551. package/src/PreviewAttachment/PreviewAttachment.tsx +24 -6
  552. package/src/ResponseActions/ResponseActionButton.test.tsx +0 -1
  553. package/src/ResponseActions/ResponseActionButton.tsx +6 -5
  554. package/src/ResponseActions/ResponseActions.test.tsx +121 -4
  555. package/src/ResponseActions/ResponseActions.tsx +71 -12
  556. package/src/Settings/SettingsForm.test.tsx +0 -1
  557. package/src/Settings/SettingsForm.tsx +2 -7
  558. package/src/SourceDetailsMenuItem/SourceDetailsMenuItem.tsx +2 -2
  559. package/src/SourcesCard/SourcesCard.test.tsx +14 -1
  560. package/src/SourcesCard/SourcesCard.tsx +19 -7
  561. package/src/TermsOfUse/TermsOfUse.test.tsx +0 -1
  562. package/src/TermsOfUse/TermsOfUse.tsx +6 -5
  563. package/tsconfig.cjs.json +0 -1
  564. package/tsconfig.json +3 -3
@@ -12,7 +12,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- const react_1 = __importDefault(require("react"));
15
+ const jsx_runtime_1 = require("react/jsx-runtime");
16
+ const react_1 = require("react");
16
17
  const react_2 = require("@testing-library/react");
17
18
  require("@testing-library/jest-dom");
18
19
  const Message_1 = __importDefault(require("./Message"));
@@ -140,12 +141,11 @@ const EMPTY_TABLE = `
140
141
 
141
142
  `;
142
143
  const IMAGE = `![Multi-colored wavy lines on a black background](https://cdn.dribbble.com/userupload/10651749/file/original-8a07b8e39d9e8bf002358c66fce1223e.gif)`;
144
+ const INLINE_IMAGE = `inline text ![Multi-colored wavy lines on a black background](https://cdn.dribbble.com/userupload/10651749/file/original-8a07b8e39d9e8bf002358c66fce1223e.gif)`;
143
145
  const ERROR = {
144
146
  title: 'Could not load chat',
145
147
  children: 'Wait a few minutes and check your network settings. If the issue persists: ',
146
- actionLinks: (react_1.default.createElement(react_1.default.Fragment, null,
147
- react_1.default.createElement(react_core_1.AlertActionLink, { component: "a", href: "#" }, "Start a new chat"),
148
- react_1.default.createElement(react_core_1.AlertActionLink, { component: "a", href: "#" }, "Contact support")))
148
+ actionLinks: ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_core_1.AlertActionLink, { component: "a", href: "#", children: "Start a new chat" }), (0, jsx_runtime_1.jsx)(react_core_1.AlertActionLink, { component: "a", href: "#", children: "Contact support" })] }))
149
149
  };
150
150
  const checkListItemsRendered = () => {
151
151
  const items = ['Item 1', 'Item 2', 'Item 3'];
@@ -160,7 +160,7 @@ describe('Message', () => {
160
160
  jest.clearAllMocks();
161
161
  });
162
162
  it('should render user messages correctly', () => {
163
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi" }));
163
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi" }));
164
164
  expect(react_2.screen.getByText('User')).toBeTruthy();
165
165
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
166
166
  const date = new Date();
@@ -174,7 +174,7 @@ describe('Message', () => {
174
174
  expect(react_2.screen.getByRole('img')).toHaveAttribute('src', './img');
175
175
  });
176
176
  it('should render bot messages correctly', () => {
177
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi" }));
177
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi" }));
178
178
  expect(react_2.screen.getByText('Bot')).toBeTruthy();
179
179
  expect(react_2.screen.getByText('AI')).toBeTruthy();
180
180
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
@@ -187,18 +187,18 @@ describe('Message', () => {
187
187
  })).toBeInTheDocument();
188
188
  });
189
189
  it('should render avatar correctly', () => {
190
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./testImg", role: "bot", name: "Bot", content: "Hi" }));
190
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./testImg", role: "bot", name: "Bot", content: "Hi" }));
191
191
  expect(react_2.screen.getByRole('img')).toHaveAttribute('src', './testImg');
192
192
  });
193
193
  it('should render botWord correctly', () => {
194
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", botWord: "\u4EBA\u5DE5\u77E5\u80FD" }));
194
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", botWord: "\u4EBA\u5DE5\u77E5\u80FD" }));
195
195
  expect(react_2.screen.getByText('Bot')).toBeTruthy();
196
196
  expect(react_2.screen.getByText('人工知能')).toBeTruthy();
197
197
  expect(react_2.screen.queryByText('AI')).toBeFalsy();
198
198
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
199
199
  });
200
200
  it('should render timestamps', () => {
201
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", timestamp: "2 hours ago" }));
201
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", timestamp: "2 hours ago" }));
202
202
  expect(react_2.screen.getByText('Bot')).toBeTruthy();
203
203
  expect(react_2.screen.getByText('AI')).toBeTruthy();
204
204
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
@@ -212,13 +212,13 @@ describe('Message', () => {
212
212
  })).not.toBeInTheDocument();
213
213
  });
214
214
  it('should render attachments', () => {
215
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", content: "Hi", attachments: [{ name: 'testAttachment' }] }));
215
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", content: "Hi", attachments: [{ name: 'testAttachment' }] }));
216
216
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
217
217
  expect(react_2.screen.getByText('testAttachment')).toBeTruthy();
218
218
  });
219
219
  it('should be able to click attachments', () => __awaiter(void 0, void 0, void 0, function* () {
220
220
  const spy = jest.fn();
221
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", content: "Hi", attachments: [{ name: 'testAttachment', onClick: spy }] }));
221
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", content: "Hi", attachments: [{ name: 'testAttachment', onClick: spy }] }));
222
222
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
223
223
  expect(react_2.screen.getByText('testAttachment')).toBeTruthy();
224
224
  yield user_event_1.default.click(react_2.screen.getByRole('button', { name: /testAttachment/i }));
@@ -226,7 +226,7 @@ describe('Message', () => {
226
226
  }));
227
227
  it('should be able to close attachments', () => __awaiter(void 0, void 0, void 0, function* () {
228
228
  const spy = jest.fn();
229
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", content: "Hi", attachments: [{ name: 'testAttachment', onClose: spy }] }));
229
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", content: "Hi", attachments: [{ name: 'testAttachment', onClose: spy }] }));
230
230
  expect(react_2.screen.getByText('Hi')).toBeTruthy();
231
231
  expect(react_2.screen.getByText('testAttachment')).toBeTruthy();
232
232
  expect(react_2.screen.getByRole('button', { name: /close testAttachment/i })).toBeTruthy();
@@ -234,7 +234,7 @@ describe('Message', () => {
234
234
  expect(spy).toHaveBeenCalledTimes(1);
235
235
  }));
236
236
  it('should render loading state', () => {
237
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true }));
237
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true }));
238
238
  expect(react_2.screen.getByText('Bot')).toBeTruthy();
239
239
  expect(react_2.screen.getByText('AI')).toBeTruthy();
240
240
  expect(react_2.screen.queryByText('Hi')).toBeFalsy();
@@ -248,7 +248,7 @@ describe('Message', () => {
248
248
  expect(react_2.screen.getByText('Loading message')).toBeTruthy();
249
249
  });
250
250
  it('should be able to show sources', () => __awaiter(void 0, void 0, void 0, function* () {
251
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", sources: {
251
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", sources: {
252
252
  sources: [
253
253
  {
254
254
  title: 'Getting started with Red Hat OpenShift',
@@ -260,7 +260,7 @@ describe('Message', () => {
260
260
  expect(react_2.screen.getByText('Getting started with Red Hat OpenShift')).toBeTruthy();
261
261
  }));
262
262
  it('should not show sources if loading', () => {
263
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true, sources: {
263
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true, sources: {
264
264
  sources: [
265
265
  {
266
266
  title: 'Getting started with Red Hat OpenShift',
@@ -274,7 +274,7 @@ describe('Message', () => {
274
274
  });
275
275
  it('should be able to show quick response', () => __awaiter(void 0, void 0, void 0, function* () {
276
276
  const spy = jest.fn();
277
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
277
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
278
278
  {
279
279
  id: '1',
280
280
  content: 'Yes',
@@ -288,7 +288,7 @@ describe('Message', () => {
288
288
  expect(spy).toHaveBeenCalledTimes(1);
289
289
  }));
290
290
  it('should be able to handle isCompact', () => __awaiter(void 0, void 0, void 0, function* () {
291
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
291
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
292
292
  {
293
293
  id: '1',
294
294
  content: 'Yes',
@@ -301,7 +301,7 @@ describe('Message', () => {
301
301
  }));
302
302
  it('should be able to show more than 1 quick response', () => __awaiter(void 0, void 0, void 0, function* () {
303
303
  const spy = jest.fn();
304
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
304
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
305
305
  {
306
306
  id: '1',
307
307
  content: 'Yes',
@@ -318,7 +318,7 @@ describe('Message', () => {
318
318
  }));
319
319
  it('should be able to spread quickResponseContainerProps', () => __awaiter(void 0, void 0, void 0, function* () {
320
320
  const spy = jest.fn();
321
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
321
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
322
322
  {
323
323
  id: '1',
324
324
  content: 'Yes',
@@ -338,7 +338,7 @@ describe('Message', () => {
338
338
  expect(react_2.screen.getByRole('button', { name: /1 more/i }));
339
339
  }));
340
340
  it('should be able to show actions', () => __awaiter(void 0, void 0, void 0, function* () {
341
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", actions: {
341
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", actions: {
342
342
  // eslint-disable-next-line no-console
343
343
  positive: { onClick: () => console.log('Good response') },
344
344
  // eslint-disable-next-line no-console
@@ -348,6 +348,8 @@ describe('Message', () => {
348
348
  // eslint-disable-next-line no-console
349
349
  share: { onClick: () => console.log('Share') },
350
350
  // eslint-disable-next-line no-console
351
+ download: { onClick: () => console.log('Download') },
352
+ // eslint-disable-next-line no-console
351
353
  listen: { onClick: () => console.log('Listen') }
352
354
  } }));
353
355
  ALL_ACTIONS.forEach(({ label }) => {
@@ -355,7 +357,7 @@ describe('Message', () => {
355
357
  });
356
358
  }));
357
359
  it('should not show actions if loading', () => __awaiter(void 0, void 0, void 0, function* () {
358
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true, actions: {
360
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true, actions: {
359
361
  // eslint-disable-next-line no-console
360
362
  positive: { onClick: () => console.log('Good response') },
361
363
  // eslint-disable-next-line no-console
@@ -365,6 +367,8 @@ describe('Message', () => {
365
367
  // eslint-disable-next-line no-console
366
368
  share: { onClick: () => console.log('Share') },
367
369
  // eslint-disable-next-line no-console
370
+ download: { onClick: () => console.log('Download') },
371
+ // eslint-disable-next-line no-console
368
372
  listen: { onClick: () => console.log('Listen') }
369
373
  } }));
370
374
  expect(react_2.screen.getByText('Loading message')).toBeTruthy();
@@ -373,30 +377,30 @@ describe('Message', () => {
373
377
  });
374
378
  }));
375
379
  it('should render unordered lists correctly', () => {
376
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: UNORDERED_LIST }));
380
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: UNORDERED_LIST }));
377
381
  expect(react_2.screen.getByText('Here is an unordered list:')).toBeTruthy();
378
382
  checkListItemsRendered();
379
383
  });
380
384
  it('should render ordered lists correctly', () => {
381
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST }));
385
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST }));
382
386
  expect(react_2.screen.getByText('Here is an ordered list:')).toBeTruthy();
383
387
  checkListItemsRendered();
384
388
  });
385
389
  it('should render ordered lists correctly if there is interstitial content', () => {
386
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST_WITH_CODE }));
390
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST_WITH_CODE }));
387
391
  checkListItemsRendered();
388
392
  const list = react_2.screen.getAllByRole('list')[1];
389
393
  expect(list).toHaveAttribute('start', '3');
390
394
  });
391
395
  it('should render inline code', () => {
392
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: INLINE_CODE }));
396
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: INLINE_CODE }));
393
397
  expect(react_2.screen.getByText(/() => void/i)).toBeTruthy();
394
398
  expect(react_2.screen.queryByRole('button', { name: 'Copy code button' })).toBeFalsy();
395
399
  });
396
400
  it('should render code correctly', () => {
397
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE }));
401
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE }));
398
402
  expect(react_2.screen.getByText('Here is some YAML code:')).toBeTruthy();
399
- expect(react_2.screen.getByRole('button', { name: 'Copy code button' })).toBeTruthy();
403
+ expect(react_2.screen.getByRole('button', { name: 'Copy code' })).toBeTruthy();
400
404
  expect(react_2.screen.getByText(/yaml/)).toBeTruthy();
401
405
  expect(react_2.screen.getByText(/apiVersion:/i)).toBeTruthy();
402
406
  expect(react_2.screen.getByText(/helm.openshift.io\/v1beta1/i)).toBeTruthy();
@@ -408,44 +412,68 @@ describe('Message', () => {
408
412
  expect(react_2.screen.getByText(/url:/i)).toBeTruthy();
409
413
  expect(react_2.screen.getByText(/https:\/\/raw.githubusercontent.com\/Azure-Samples\/helm-charts\/master\/docs/i)).toBeTruthy();
410
414
  });
415
+ it('should render expandable code correctly', () => {
416
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE, codeBlockProps: { isExpandable: true } }));
417
+ expect(react_2.screen.getByText('Here is some YAML code:')).toBeTruthy();
418
+ expect(react_2.screen.getByRole('button', { name: 'Copy code' })).toBeTruthy();
419
+ expect(react_2.screen.getByText(/yaml/)).toBeTruthy();
420
+ expect(react_2.screen.getByText(/apiVersion/i)).toBeTruthy();
421
+ expect(react_2.screen.getByRole('button', { name: /Show more/i })).toBeTruthy();
422
+ });
423
+ it('should handle click on expandable code correctly', () => __awaiter(void 0, void 0, void 0, function* () {
424
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE, codeBlockProps: { isExpandable: true } }));
425
+ const button = react_2.screen.getByRole('button', { name: /Show more/i });
426
+ yield user_event_1.default.click(button);
427
+ expect(react_2.screen.getByRole('button', { name: /Show less/i })).toBeTruthy();
428
+ expect(react_2.screen.getByText(/yaml/)).toBeTruthy();
429
+ expect(react_2.screen.getByText(/apiVersion:/i)).toBeTruthy();
430
+ expect(react_2.screen.getByText(/helm.openshift.io\/v1beta1/i)).toBeTruthy();
431
+ expect(react_2.screen.getByText(/metadata:/i)).toBeTruthy();
432
+ expect(react_2.screen.getByText(/name:/i)).toBeTruthy();
433
+ expect(react_2.screen.getByText(/azure-sample-repo0oooo00ooo/i)).toBeTruthy();
434
+ expect(react_2.screen.getByText(/spec/i)).toBeTruthy();
435
+ expect(react_2.screen.getByText(/connectionConfig:/i)).toBeTruthy();
436
+ expect(react_2.screen.getByText(/url:/i)).toBeTruthy();
437
+ expect(react_2.screen.getByText(/https:\/\/raw.githubusercontent.com\/Azure-Samples\/helm-charts\/master\/docs/i)).toBeTruthy();
438
+ }));
411
439
  it('can click copy code button', () => __awaiter(void 0, void 0, void 0, function* () {
412
440
  // need explicit setup since RTL stubs clipboard if you do this
413
441
  const user = user_event_1.default.setup();
414
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE }));
415
- expect(react_2.screen.getByRole('button', { name: 'Copy code button' })).toBeTruthy();
416
- yield user.click(react_2.screen.getByRole('button', { name: 'Copy code button' }));
442
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE }));
443
+ expect(react_2.screen.getByRole('button', { name: 'Copy code' })).toBeTruthy();
444
+ yield user.click(react_2.screen.getByRole('button', { name: 'Copy code' }));
417
445
  const clipboardText = yield navigator.clipboard.readText();
418
446
  expect(clipboardText.trim()).toEqual(CODE.trim());
419
447
  }));
420
448
  it('should handle codeBlockProps correctly by spreading it onto the CodeMessage', () => {
421
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE, codeBlockProps: { 'aria-label': 'test' } }));
449
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE, codeBlockProps: { 'aria-label': 'test' } }));
422
450
  expect(react_2.screen.getByRole('button', { name: 'test' })).toBeTruthy();
423
451
  });
424
452
  it('should handle hasRoundAvatar correctly when it is true', () => {
425
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", hasRoundAvatar: true }));
453
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", hasRoundAvatar: true }));
426
454
  expect(react_2.screen.getByRole('img')).toBeTruthy();
427
455
  expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar');
428
456
  expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar--round');
429
457
  });
430
458
  it('should handle hasRoundAvatar correctly when it is false', () => {
431
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", hasRoundAvatar: false }));
459
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", hasRoundAvatar: false }));
432
460
  expect(react_2.screen.getByRole('img')).toBeTruthy();
433
461
  expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar');
434
462
  expect(react_2.screen.getByRole('img')).not.toHaveClass('pf-chatbot__message-avatar--round');
435
463
  });
436
464
  it('should handle avatarProps correctly by spreading it onto the Message Avatar', () => {
437
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", avatarProps: { className: 'test' } }));
465
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", avatarProps: { className: 'test' } }));
438
466
  expect(react_2.screen.getByRole('img')).toBeTruthy();
439
467
  expect(react_2.screen.getByRole('img')).toHaveClass('test');
440
468
  });
441
469
  it('should handle avatarProps and hasRoundAvatar correctly', () => {
442
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", avatarProps: { className: 'test' }, hasRoundAvatar: false }));
470
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", avatarProps: { className: 'test' }, hasRoundAvatar: false }));
443
471
  expect(react_2.screen.getByRole('img')).toBeTruthy();
444
472
  expect(react_2.screen.getByRole('img')).toHaveClass('test');
445
473
  expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar');
446
474
  });
447
475
  it('should handle QuickStart tile correctly', () => {
448
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
476
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
449
477
  quickStart: monitor_sampleapp_quickstart_1.monitorSampleAppQuickStart,
450
478
  onSelectQuickStart: (id) => alert(id)
451
479
  } }));
@@ -456,7 +484,7 @@ describe('Message', () => {
456
484
  });
457
485
  it('should handle click on QuickStart tile correctly', () => __awaiter(void 0, void 0, void 0, function* () {
458
486
  const spy = jest.fn();
459
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
487
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
460
488
  quickStart: monitor_sampleapp_quickstart_1.monitorSampleAppQuickStart,
461
489
  onSelectQuickStart: (id) => spy(id)
462
490
  } }));
@@ -466,20 +494,20 @@ describe('Message', () => {
466
494
  }));
467
495
  it('should handle QuickStart tile with image correctly', () => __awaiter(void 0, void 0, void 0, function* () {
468
496
  const spy = jest.fn();
469
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
497
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
470
498
  quickStart: monitor_sampleapp_quickstart_with_image_1.monitorSampleAppQuickStartWithImage,
471
499
  onSelectQuickStart: (id) => spy(id)
472
500
  } }));
473
501
  expect(react_2.screen.getAllByRole('img')[1]).toHaveAttribute('src', 'test.png');
474
502
  }));
475
503
  it('should handle block quote correctly', () => {
476
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: BLOCK_QUOTES }));
504
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: BLOCK_QUOTES }));
477
505
  expect(react_2.screen.getByText(/Blockquotes can also be nested.../)).toBeTruthy();
478
506
  expect(react_2.screen.getByText('...by using additional greater-than signs (>) right next to each other...')).toBeTruthy();
479
507
  expect(react_2.screen.getByText(/...or with spaces between each sign./)).toBeTruthy();
480
508
  });
481
509
  it('should handle heading correctly', () => {
482
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: HEADING }));
510
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: HEADING }));
483
511
  expect(react_2.screen.getByRole('heading', { name: /h1 Heading/i })).toBeTruthy();
484
512
  expect(react_2.screen.getByRole('heading', { name: /h2 Heading/i })).toBeTruthy();
485
513
  expect(react_2.screen.getByRole('heading', { name: /h3 Heading/i })).toBeTruthy();
@@ -488,7 +516,7 @@ describe('Message', () => {
488
516
  expect(react_2.screen.getByRole('heading', { name: /h6 Heading/i })).toBeTruthy();
489
517
  });
490
518
  it('should render table correctly', () => {
491
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE }));
519
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE }));
492
520
  expect(react_2.screen.getByRole('row', { name: /Column 1 Column 2/i })).toBeTruthy();
493
521
  expect(react_2.screen.getByRole('row', { name: /Cell 1 Cell 2/i })).toBeTruthy();
494
522
  expect(react_2.screen.getByRole('row', { name: /Cell 3 Cell 4/i })).toBeTruthy();
@@ -500,7 +528,7 @@ describe('Message', () => {
500
528
  expect(react_2.screen.getByRole('cell', { name: /Cell 4/i })).toBeTruthy();
501
529
  });
502
530
  it('should render table data labels correctly for mobile breakpoint', () => {
503
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE }));
531
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE }));
504
532
  expect(react_2.screen.getByRole('row', { name: /Cell 1 Cell 2/i })).toHaveAttribute('extraHeaders', 'Column 1,Column 2');
505
533
  expect(react_2.screen.getByRole('row', { name: /Cell 3 Cell 4/i })).toHaveAttribute('extraHeaders', 'Column 1,Column 2');
506
534
  expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).toHaveAttribute('data-label', 'Column 1');
@@ -509,70 +537,70 @@ describe('Message', () => {
509
537
  expect(react_2.screen.getByRole('cell', { name: /Cell 4/i })).toHaveAttribute('data-label', 'Column 2');
510
538
  });
511
539
  it('should render table data labels correctly for mobile breakpoint for one column table', () => {
512
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ONE_COLUMN_TABLE }));
540
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ONE_COLUMN_TABLE }));
513
541
  expect(react_2.screen.getByRole('row', { name: /Cell 1/i })).toHaveAttribute('extraHeaders', 'Column 1');
514
542
  expect(react_2.screen.getByRole('row', { name: /Cell 2/i })).toHaveAttribute('extraHeaders', 'Column 1');
515
543
  expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).toHaveAttribute('data-label', 'Column 1');
516
544
  expect(react_2.screen.getByRole('cell', { name: /Cell 2/i })).toHaveAttribute('data-label', 'Column 1');
517
545
  });
518
546
  it('should render table data labels correctly for mobile breakpoint for one cell table', () => {
519
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ONE_CELL_TABLE }));
547
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ONE_CELL_TABLE }));
520
548
  expect(react_2.screen.getByRole('row', { name: /Cell 1/i })).toHaveAttribute('extraHeaders', 'Column 1');
521
549
  expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).toHaveAttribute('data-label', 'Column 1');
522
550
  });
523
551
  it('should render table data labels correctly for mobile breakpoint for headerless', () => {
524
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: HEADERLESS_TABLE }));
552
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: HEADERLESS_TABLE }));
525
553
  expect(react_2.screen.getByRole('row', { name: /Cell 1/i })).toHaveAttribute('extraHeaders', '');
526
554
  expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).not.toHaveAttribute('data-label');
527
555
  });
528
556
  it('should render table data labels correctly for mobile breakpoint for childless', () => {
529
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CHILDLESS_TABLE }));
557
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CHILDLESS_TABLE }));
530
558
  expect(react_2.screen.getByRole('cell')).not.toHaveAttribute('extraHeaders', 'Column 1');
531
559
  });
532
560
  it('should render table data labels correctly for mobile breakpoint for empty', () => {
533
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: EMPTY_TABLE }));
561
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: EMPTY_TABLE }));
534
562
  expect(react_2.screen.getByRole('cell')).not.toHaveAttribute('extraHeaders', '');
535
563
  });
536
564
  it('should render custom table aria label correctly', () => {
537
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE, tableProps: { 'aria-label': 'Test' } }));
565
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE, tableProps: { 'aria-label': 'Test' } }));
538
566
  expect(react_2.screen.getByRole('grid', { name: /Test/i })).toBeTruthy();
539
567
  });
540
568
  it('should render beforeMainContent with main content', () => {
541
569
  const mainContent = 'Main message content';
542
570
  const beforeMainContentText = 'Before main content';
543
- const beforeMainContent = react_1.default.createElement("div", null, beforeMainContentText);
544
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: mainContent, extraContent: { beforeMainContent } }));
571
+ const beforeMainContent = (0, jsx_runtime_1.jsx)("div", { children: beforeMainContentText });
572
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: mainContent, extraContent: { beforeMainContent } }));
545
573
  expect(react_2.screen.getByText(beforeMainContentText)).toBeTruthy();
546
574
  expect(react_2.screen.getByText(mainContent)).toBeTruthy();
547
575
  });
548
576
  it('should render afterMainContent with main content', () => {
549
577
  const mainContent = 'Main message content';
550
578
  const afterMainContentText = 'After main content';
551
- const afterMainContent = react_1.default.createElement("div", null, afterMainContentText);
552
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: mainContent, extraContent: { afterMainContent } }));
579
+ const afterMainContent = (0, jsx_runtime_1.jsx)("div", { children: afterMainContentText });
580
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: mainContent, extraContent: { afterMainContent } }));
553
581
  expect(react_2.screen.getByText(afterMainContentText)).toBeTruthy();
554
582
  expect(react_2.screen.getByText(mainContent)).toBeTruthy();
555
583
  });
556
584
  it('should render endContent with main content', () => {
557
585
  const mainContent = 'Main message content';
558
586
  const endMainContentText = 'End content';
559
- const endContent = react_1.default.createElement("div", null, endMainContentText);
560
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: mainContent, extraContent: { endContent } }));
587
+ const endContent = (0, jsx_runtime_1.jsx)("div", { children: endMainContentText });
588
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: mainContent, extraContent: { endContent } }));
561
589
  expect(react_2.screen.getByText(endMainContentText)).toBeTruthy();
562
590
  expect(react_2.screen.getByText(mainContent)).toBeTruthy();
563
591
  });
564
592
  it('should render all parts of extraContent with main content', () => {
565
- const beforeMainContent = react_1.default.createElement("div", null, "Before main content");
566
- const afterMainContent = react_1.default.createElement("div", null, "After main content");
567
- const endContent = react_1.default.createElement("div", null, "End content");
568
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content", extraContent: { beforeMainContent, afterMainContent, endContent } }));
593
+ const beforeMainContent = (0, jsx_runtime_1.jsx)("div", { children: "Before main content" });
594
+ const afterMainContent = (0, jsx_runtime_1.jsx)("div", { children: "After main content" });
595
+ const endContent = (0, jsx_runtime_1.jsx)("div", { children: "End content" });
596
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content", extraContent: { beforeMainContent, afterMainContent, endContent } }));
569
597
  expect(react_2.screen.getByText('Before main content')).toBeTruthy();
570
598
  expect(react_2.screen.getByText('Main message content')).toBeTruthy();
571
599
  expect(react_2.screen.getByText('After main content')).toBeTruthy();
572
600
  expect(react_2.screen.getByText('End content')).toBeTruthy();
573
601
  });
574
602
  it('should not render extraContent when not provided', () => {
575
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content" }));
603
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content" }));
576
604
  // Ensure no extraContent is rendered
577
605
  expect(react_2.screen.getByText('Main message content')).toBeTruthy();
578
606
  expect(react_2.screen.queryByText('Before main content')).toBeFalsy();
@@ -580,7 +608,7 @@ describe('Message', () => {
580
608
  expect(react_2.screen.queryByText('end message content')).toBeFalsy();
581
609
  });
582
610
  it('should handle undefined or null values in extraContent gracefully', () => {
583
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content", extraContent: { beforeMainContent: null, afterMainContent: undefined, endContent: null } }));
611
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content", extraContent: { beforeMainContent: null, afterMainContent: undefined, endContent: null } }));
584
612
  // Ensure that no extraContent is rendered if they are null or undefined
585
613
  expect(react_2.screen.getByText('Main message content')).toBeTruthy();
586
614
  expect(react_2.screen.queryByText('Before main content')).toBeFalsy();
@@ -588,64 +616,66 @@ describe('Message', () => {
588
616
  expect(react_2.screen.queryByText('end message content')).toBeFalsy();
589
617
  });
590
618
  it('should render JSX in extraContent correctly', () => {
591
- const beforeMainContent = (react_1.default.createElement("div", { "data-testid": "before-main-content" },
592
- react_1.default.createElement("strong", null, "Bold before content")));
593
- const afterMainContent = (react_1.default.createElement("div", { "data-testid": "after-main-content" },
594
- react_1.default.createElement("strong", null, "Bold after content")));
595
- const endContent = (react_1.default.createElement("div", { "data-testid": "end-main-content" },
596
- react_1.default.createElement("strong", null, "Bold end content")));
597
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content", extraContent: { beforeMainContent, afterMainContent, endContent } }));
619
+ const beforeMainContent = ((0, jsx_runtime_1.jsx)("div", { "data-testid": "before-main-content", children: (0, jsx_runtime_1.jsx)("strong", { children: "Bold before content" }) }));
620
+ const afterMainContent = ((0, jsx_runtime_1.jsx)("div", { "data-testid": "after-main-content", children: (0, jsx_runtime_1.jsx)("strong", { children: "Bold after content" }) }));
621
+ const endContent = ((0, jsx_runtime_1.jsx)("div", { "data-testid": "end-main-content", children: (0, jsx_runtime_1.jsx)("strong", { children: "Bold end content" }) }));
622
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content", extraContent: { beforeMainContent, afterMainContent, endContent } }));
598
623
  // Check that the JSX is correctly rendered
599
624
  expect(react_2.screen.getByTestId('before-main-content')).toContainHTML('<strong>Bold before content</strong>');
600
625
  expect(react_2.screen.getByTestId('after-main-content')).toContainHTML('<strong>Bold after content</strong>');
601
626
  expect(react_2.screen.getByTestId('end-main-content')).toContainHTML('<strong>Bold end content</strong>');
602
627
  });
603
628
  it('should handle image correctly', () => {
604
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: IMAGE }));
629
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: IMAGE }));
630
+ expect(react_2.screen.getByRole('img', { name: /Multi-colored wavy lines on a black background/i })).toBeTruthy();
631
+ });
632
+ it('inline image parent should have class pf-chatbot__message-and-actions', () => {
633
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: INLINE_IMAGE }));
605
634
  expect(react_2.screen.getByRole('img', { name: /Multi-colored wavy lines on a black background/i })).toBeTruthy();
635
+ expect(react_2.screen.getByRole('img', { name: /Multi-colored wavy lines on a black background/i }).parentElement).toHaveClass('pf-chatbot__message-and-actions');
606
636
  });
607
637
  it('should handle external links correctly', () => {
608
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: `[PatternFly](https://www.patternfly.org/)` }));
638
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: `[PatternFly](https://www.patternfly.org/)` }));
609
639
  // we are mocking rehype libraries, so we can't test target _blank addition on links directly with RTL
610
640
  expect(rehype_external_links_1.default).toHaveBeenCalledTimes(1);
611
641
  });
612
642
  it('should handle external links correctly', () => {
613
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: `[PatternFly](https://www.patternfly.org/)`, openLinkInNewTab: false }));
643
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: `[PatternFly](https://www.patternfly.org/)`, openLinkInNewTab: false }));
614
644
  // we are mocking rehype libraries, so we can't test target _blank addition on links directly with RTL
615
645
  expect(rehype_external_links_1.default).not.toHaveBeenCalled();
616
646
  });
617
647
  it('should handle extra link props correctly', () => __awaiter(void 0, void 0, void 0, function* () {
618
648
  const spy = jest.fn();
619
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", content: `[PatternFly](https://www.patternfly.org/)`, linkProps: { onClick: spy } }));
649
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: `[PatternFly](https://www.patternfly.org/)`, linkProps: { onClick: spy } }));
620
650
  yield user_event_1.default.click(react_2.screen.getByRole('link', { name: /PatternFly/i }));
621
651
  expect(spy).toHaveBeenCalledTimes(1);
622
652
  }));
623
653
  it('should handle error correctly', () => {
624
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR }));
654
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR }));
625
655
  expect(react_2.screen.getByRole('heading', { name: /Could not load chat/i })).toBeTruthy();
626
656
  expect(react_2.screen.getByRole('link', { name: /Start a new chat/i })).toBeTruthy();
627
657
  expect(react_2.screen.getByRole('link', { name: /Contact support/i })).toBeTruthy();
628
658
  expect(react_2.screen.getByText('Wait a few minutes and check your network settings. If the issue persists:')).toBeTruthy();
629
659
  });
630
660
  it('should handle error correctly when loading', () => {
631
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR, isLoading: true }));
661
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR, isLoading: true }));
632
662
  expect(react_2.screen.queryByRole('heading', { name: /Could not load chat/i })).toBeFalsy();
633
663
  expect(react_2.screen.getByText('Loading message')).toBeTruthy();
634
664
  });
635
665
  it('should handle error correctly when these is content', () => {
636
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR, content: "Test" }));
666
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR, content: "Test" }));
637
667
  expect(react_2.screen.getByRole('heading', { name: /Could not load chat/i })).toBeTruthy();
638
668
  expect(react_2.screen.queryByText('Test')).toBeFalsy();
639
669
  });
640
670
  it('should handle isEditable when there is message content', () => {
641
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, content: "Test" }));
671
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, content: "Test" }));
642
672
  expect(react_2.screen.getByRole('textbox')).toBeTruthy();
643
673
  expect(react_2.screen.getByRole('textbox')).toHaveValue('Test');
644
674
  expect(react_2.screen.getByRole('button', { name: /Update/i })).toBeTruthy();
645
675
  expect(react_2.screen.getByRole('button', { name: /Cancel/i })).toBeTruthy();
646
676
  });
647
677
  it('should handle isEditable when there is no message content', () => {
648
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true }));
678
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true }));
649
679
  expect(react_2.screen.getByRole('textbox')).toBeTruthy();
650
680
  expect(react_2.screen.getByRole('textbox')).toHaveValue('');
651
681
  expect(react_2.screen.getByRole('textbox')).toHaveAttribute('placeholder', 'Edit prompt message...');
@@ -653,33 +683,33 @@ describe('Message', () => {
653
683
  expect(react_2.screen.getByRole('button', { name: /Cancel/i })).toBeTruthy();
654
684
  });
655
685
  it('should be able to change edit placeholder', () => {
656
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, editPlaceholder: "I am a placeholder" }));
686
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, editPlaceholder: "I am a placeholder" }));
657
687
  expect(react_2.screen.getByRole('textbox')).toBeTruthy();
658
688
  expect(react_2.screen.getByRole('textbox')).toHaveValue('');
659
689
  expect(react_2.screen.getByRole('textbox')).toHaveAttribute('placeholder', 'I am a placeholder');
660
690
  });
661
691
  it('should be able to change updateWord', () => {
662
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, updateWord: "Submit" }));
692
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, updateWord: "Submit" }));
663
693
  expect(react_2.screen.getByRole('button', { name: /Submit/i })).toBeTruthy();
664
694
  });
665
695
  it('should be able to change cancelWord', () => {
666
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, cancelWord: "Don't submit" }));
696
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, cancelWord: "Don't submit" }));
667
697
  expect(react_2.screen.getByRole('button', { name: /Don't submit/i })).toBeTruthy();
668
698
  });
669
699
  it('should be able to add onEditUpdate', () => __awaiter(void 0, void 0, void 0, function* () {
670
700
  const spy = jest.fn();
671
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, onEditUpdate: spy }));
701
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, onEditUpdate: spy }));
672
702
  yield user_event_1.default.click(react_2.screen.getByRole('button', { name: /Update/i }));
673
703
  expect(spy).toHaveBeenCalledTimes(1);
674
704
  }));
675
705
  it('should be able to add onEditCancel', () => __awaiter(void 0, void 0, void 0, function* () {
676
706
  const spy = jest.fn();
677
- (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, onEditCancel: spy }));
707
+ (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, onEditCancel: spy }));
678
708
  yield user_event_1.default.click(react_2.screen.getByRole('button', { name: /Cancel/i }));
679
709
  expect(spy).toHaveBeenCalledTimes(1);
680
710
  }));
681
711
  it('should be able to add editFormProps', () => {
682
- const { container } = (0, react_2.render)(react_1.default.createElement(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, editFormProps: { className: 'test' } }));
712
+ const { container } = (0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, editFormProps: { className: 'test' } }));
683
713
  const form = container.querySelector('form');
684
714
  expect(form).toHaveClass('test');
685
715
  });
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { FunctionComponent } from 'react';
2
2
  import { FormProps } from '@patternfly/react-core';
3
3
  export interface MessageInputProps extends FormProps {
4
4
  /** Placeholder for edit input */
@@ -14,5 +14,5 @@ export interface MessageInputProps extends FormProps {
14
14
  /** Message text */
15
15
  content?: string;
16
16
  }
17
- declare const MessageInput: React.FunctionComponent<MessageInputProps>;
17
+ declare const MessageInput: FunctionComponent<MessageInputProps>;
18
18
  export default MessageInput;