@patternfly/chatbot 6.3.0-prerelease.13 → 6.3.0-prerelease.14

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 (529) 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 +6 -3
  51. package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +9 -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 +2 -2
  80. package/dist/cjs/FileDropZone/FileDropZone.js +5 -8
  81. package/dist/cjs/FileDropZone/FileDropZone.test.js +5 -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 +1 -2
  86. package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.js +10 -15
  87. package/dist/cjs/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
  88. package/dist/cjs/Message/ErrorMessage/ErrorMessage.js +5 -8
  89. package/dist/cjs/Message/ImageMessage/ImageMessage.d.ts +1 -2
  90. package/dist/cjs/Message/ImageMessage/ImageMessage.js +2 -8
  91. package/dist/cjs/Message/LinkMessage/LinkMessage.d.ts +1 -2
  92. package/dist/cjs/Message/LinkMessage/LinkMessage.js +6 -9
  93. package/dist/cjs/Message/ListMessage/ListItemMessage.d.ts +1 -2
  94. package/dist/cjs/Message/ListMessage/ListItemMessage.js +2 -8
  95. package/dist/cjs/Message/ListMessage/OrderedListMessage.d.ts +1 -2
  96. package/dist/cjs/Message/ListMessage/OrderedListMessage.js +2 -9
  97. package/dist/cjs/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
  98. package/dist/cjs/Message/ListMessage/UnorderedListMessage.js +2 -9
  99. package/dist/cjs/Message/Message.d.ts +8 -7
  100. package/dist/cjs/Message/Message.js +47 -70
  101. package/dist/cjs/Message/Message.test.js +75 -79
  102. package/dist/cjs/Message/MessageInput.d.ts +2 -2
  103. package/dist/cjs/Message/MessageInput.js +5 -14
  104. package/dist/cjs/Message/MessageLoading.d.ts +1 -2
  105. package/dist/cjs/Message/MessageLoading.js +3 -8
  106. package/dist/cjs/Message/QuickResponse/QuickResponse.d.ts +2 -2
  107. package/dist/cjs/Message/QuickResponse/QuickResponse.js +7 -9
  108. package/dist/cjs/Message/QuickStarts/FallbackImg.d.ts +2 -2
  109. package/dist/cjs/Message/QuickStarts/FallbackImg.js +5 -27
  110. package/dist/cjs/Message/QuickStarts/QuickStartTile.d.ts +2 -2
  111. package/dist/cjs/Message/QuickStarts/QuickStartTile.js +7 -43
  112. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
  113. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.js +9 -38
  114. package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.test.js +16 -16
  115. package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
  116. package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.js +2 -26
  117. package/dist/cjs/Message/QuickStarts/types.d.ts +4 -3
  118. package/dist/cjs/Message/TableMessage/TableMessage.d.ts +1 -2
  119. package/dist/cjs/Message/TableMessage/TableMessage.js +8 -10
  120. package/dist/cjs/Message/TableMessage/TbodyMessage.d.ts +2 -3
  121. package/dist/cjs/Message/TableMessage/TbodyMessage.js +7 -9
  122. package/dist/cjs/Message/TableMessage/TdMessage.d.ts +1 -2
  123. package/dist/cjs/Message/TableMessage/TdMessage.js +2 -8
  124. package/dist/cjs/Message/TableMessage/ThMessage.d.ts +1 -2
  125. package/dist/cjs/Message/TableMessage/ThMessage.js +2 -8
  126. package/dist/cjs/Message/TableMessage/TheadMessage.d.ts +1 -2
  127. package/dist/cjs/Message/TableMessage/TheadMessage.js +2 -8
  128. package/dist/cjs/Message/TableMessage/TrMessage.d.ts +2 -3
  129. package/dist/cjs/Message/TableMessage/TrMessage.js +8 -10
  130. package/dist/cjs/Message/TextMessage/TextMessage.d.ts +1 -2
  131. package/dist/cjs/Message/TextMessage/TextMessage.js +2 -9
  132. package/dist/cjs/Message/UserFeedback/CloseButton.d.ts +2 -2
  133. package/dist/cjs/Message/UserFeedback/CloseButton.js +2 -8
  134. package/dist/cjs/Message/UserFeedback/UserFeedback.d.ts +2 -2
  135. package/dist/cjs/Message/UserFeedback/UserFeedback.js +12 -23
  136. package/dist/cjs/Message/UserFeedback/UserFeedback.test.js +53 -53
  137. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
  138. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.js +20 -44
  139. package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.test.js +81 -91
  140. package/dist/cjs/MessageBar/AttachButton.d.ts +1 -2
  141. package/dist/cjs/MessageBar/AttachButton.js +6 -15
  142. package/dist/cjs/MessageBar/AttachButton.test.js +24 -24
  143. package/dist/cjs/MessageBar/MessageBar.d.ts +2 -2
  144. package/dist/cjs/MessageBar/MessageBar.js +21 -27
  145. package/dist/cjs/MessageBar/MessageBar.test.js +101 -115
  146. package/dist/cjs/MessageBar/MicrophoneButton.d.ts +2 -2
  147. package/dist/cjs/MessageBar/MicrophoneButton.js +7 -14
  148. package/dist/cjs/MessageBar/SendButton.d.ts +3 -2
  149. package/dist/cjs/MessageBar/SendButton.js +3 -11
  150. package/dist/cjs/MessageBar/SendButton.test.js +15 -15
  151. package/dist/cjs/MessageBar/StopButton.d.ts +3 -2
  152. package/dist/cjs/MessageBar/StopButton.js +3 -12
  153. package/dist/cjs/MessageBar/StopButton.test.js +15 -15
  154. package/dist/cjs/MessageBox/JumpButton.d.ts +2 -2
  155. package/dist/cjs/MessageBox/JumpButton.js +2 -10
  156. package/dist/cjs/MessageBox/JumpButton.test.js +10 -10
  157. package/dist/cjs/MessageBox/MessageBox.d.ts +3 -3
  158. package/dist/cjs/MessageBox/MessageBox.js +13 -20
  159. package/dist/cjs/MessageBox/MessageBox.test.js +7 -10
  160. package/dist/cjs/PreviewAttachment/PreviewAttachment.d.ts +12 -2
  161. package/dist/cjs/PreviewAttachment/PreviewAttachment.js +3 -6
  162. package/dist/cjs/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
  163. package/dist/cjs/PreviewAttachment/PreviewAttachment.test.js +34 -12
  164. package/dist/cjs/ResponseActions/ResponseActionButton.d.ts +3 -3
  165. package/dist/cjs/ResponseActions/ResponseActionButton.js +5 -8
  166. package/dist/cjs/ResponseActions/ResponseActionButton.test.js +19 -19
  167. package/dist/cjs/ResponseActions/ResponseActions.d.ts +2 -2
  168. package/dist/cjs/ResponseActions/ResponseActions.js +10 -14
  169. package/dist/cjs/ResponseActions/ResponseActions.test.js +42 -42
  170. package/dist/cjs/Settings/SettingsForm.d.ts +2 -2
  171. package/dist/cjs/Settings/SettingsForm.js +2 -8
  172. package/dist/cjs/Settings/SettingsForm.test.js +9 -12
  173. package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
  174. package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -11
  175. package/dist/cjs/SourcesCard/SourcesCard.d.ts +2 -2
  176. package/dist/cjs/SourcesCard/SourcesCard.js +16 -42
  177. package/dist/cjs/SourcesCard/SourcesCard.test.js +60 -60
  178. package/dist/cjs/TermsOfUse/TermsOfUse.d.ts +3 -3
  179. package/dist/cjs/TermsOfUse/TermsOfUse.js +4 -16
  180. package/dist/cjs/TermsOfUse/TermsOfUse.test.js +31 -33
  181. package/dist/esm/AttachMenu/AttachMenu.d.ts +2 -2
  182. package/dist/esm/AttachMenu/AttachMenu.js +2 -9
  183. package/dist/esm/AttachmentEdit/AttachmentEdit.d.ts +12 -2
  184. package/dist/esm/AttachmentEdit/AttachmentEdit.js +3 -6
  185. package/dist/esm/AttachmentEdit/AttachmentEdit.test.d.ts +1 -1
  186. package/dist/esm/AttachmentEdit/AttachmentEdit.test.js +30 -5
  187. package/dist/esm/Chatbot/Chatbot.d.ts +1 -2
  188. package/dist/esm/Chatbot/Chatbot.js +4 -6
  189. package/dist/esm/Chatbot/Chatbot.test.js +6 -6
  190. package/dist/esm/ChatbotAlert/ChatbotAlert.d.ts +2 -2
  191. package/dist/esm/ChatbotAlert/ChatbotAlert.js +4 -5
  192. package/dist/esm/ChatbotAlert/ChatbotAlert.test.js +4 -4
  193. package/dist/esm/ChatbotContent/ChatbotContent.d.ts +3 -3
  194. package/dist/esm/ChatbotContent/ChatbotContent.js +2 -5
  195. package/dist/esm/ChatbotContent/ChatbotContent.test.js +3 -3
  196. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.d.ts +2 -2
  197. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.js +7 -11
  198. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +8 -10
  199. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.d.ts +2 -2
  200. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +16 -33
  201. package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +26 -34
  202. package/dist/esm/ChatbotConversationHistoryNav/EmptyState.d.ts +2 -2
  203. package/dist/esm/ChatbotConversationHistoryNav/EmptyState.js +2 -6
  204. package/dist/esm/ChatbotConversationHistoryNav/LoadingState.d.ts +2 -2
  205. package/dist/esm/ChatbotConversationHistoryNav/LoadingState.js +2 -22
  206. package/dist/esm/ChatbotFooter/ChatbotFooter.d.ts +3 -3
  207. package/dist/esm/ChatbotFooter/ChatbotFooter.js +2 -12
  208. package/dist/esm/ChatbotFooter/ChatbotFooter.test.js +4 -4
  209. package/dist/esm/ChatbotFooter/ChatbotFooternote.test.js +5 -5
  210. package/dist/esm/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
  211. package/dist/esm/ChatbotFooter/ChatbotFootnote.js +10 -23
  212. package/dist/esm/ChatbotHeader/ChatbotHeader.d.ts +3 -3
  213. package/dist/esm/ChatbotHeader/ChatbotHeader.js +2 -4
  214. package/dist/esm/ChatbotHeader/ChatbotHeader.test.js +3 -3
  215. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
  216. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.js +2 -2
  217. package/dist/esm/ChatbotHeader/ChatbotHeaderActions.test.js +3 -3
  218. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +1 -2
  219. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.js +5 -7
  220. package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.js +4 -4
  221. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
  222. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.js +2 -2
  223. package/dist/esm/ChatbotHeader/ChatbotHeaderMain.test.js +3 -3
  224. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.d.ts +2 -2
  225. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.js +5 -7
  226. package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.js +4 -4
  227. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +6 -3
  228. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
  229. package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +9 -8
  230. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +6 -3
  231. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +9 -9
  232. package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +9 -8
  233. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
  234. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.js +2 -2
  235. package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.test.js +12 -12
  236. package/dist/esm/ChatbotModal/ChatbotModal.d.ts +2 -2
  237. package/dist/esm/ChatbotModal/ChatbotModal.js +3 -6
  238. package/dist/esm/ChatbotModal/ChatbotModal.test.js +2 -14
  239. package/dist/esm/ChatbotPopover/ChatbotPopover.d.ts +2 -2
  240. package/dist/esm/ChatbotPopover/ChatbotPopover.js +2 -5
  241. package/dist/esm/ChatbotToggle/ChatbotToggle.d.ts +1 -2
  242. package/dist/esm/ChatbotToggle/ChatbotToggle.js +8 -13
  243. package/dist/esm/ChatbotToggle/ChatbotToggle.test.js +8 -8
  244. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +2 -2
  245. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +6 -17
  246. package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +8 -8
  247. package/dist/esm/CodeModal/CodeModal.d.ts +8 -2
  248. package/dist/esm/CodeModal/CodeModal.js +8 -20
  249. package/dist/esm/CodeModal/CodeModal.test.js +22 -3
  250. package/dist/esm/Compare/Compare.d.ts +2 -2
  251. package/dist/esm/Compare/Compare.js +7 -13
  252. package/dist/esm/Compare/Compare.test.js +4 -6
  253. package/dist/esm/FileDetails/FileDetails.d.ts +2 -2
  254. package/dist/esm/FileDetails/FileDetails.js +2 -15
  255. package/dist/esm/FileDetails/FileDetails.test.js +4 -4
  256. package/dist/esm/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
  257. package/dist/esm/FileDetailsLabel/FileDetailsLabel.js +2 -5
  258. package/dist/esm/FileDetailsLabel/FileDetailsLabel.test.js +9 -9
  259. package/dist/esm/FileDropZone/FileDropZone.d.ts +2 -2
  260. package/dist/esm/FileDropZone/FileDropZone.js +5 -5
  261. package/dist/esm/FileDropZone/FileDropZone.test.js +3 -3
  262. package/dist/esm/LoadingMessage/LoadingMessage.d.ts +2 -2
  263. package/dist/esm/LoadingMessage/LoadingMessage.js +2 -10
  264. package/dist/esm/LoadingMessage/LoadingMessage.test.js +3 -3
  265. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.d.ts +1 -2
  266. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.js +10 -15
  267. package/dist/esm/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
  268. package/dist/esm/Message/ErrorMessage/ErrorMessage.js +5 -5
  269. package/dist/esm/Message/ImageMessage/ImageMessage.d.ts +1 -2
  270. package/dist/esm/Message/ImageMessage/ImageMessage.js +2 -5
  271. package/dist/esm/Message/LinkMessage/LinkMessage.d.ts +1 -2
  272. package/dist/esm/Message/LinkMessage/LinkMessage.js +6 -6
  273. package/dist/esm/Message/ListMessage/ListItemMessage.d.ts +1 -2
  274. package/dist/esm/Message/ListMessage/ListItemMessage.js +2 -5
  275. package/dist/esm/Message/ListMessage/OrderedListMessage.d.ts +1 -2
  276. package/dist/esm/Message/ListMessage/OrderedListMessage.js +2 -6
  277. package/dist/esm/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
  278. package/dist/esm/Message/ListMessage/UnorderedListMessage.js +2 -6
  279. package/dist/esm/Message/Message.d.ts +8 -7
  280. package/dist/esm/Message/Message.js +47 -70
  281. package/dist/esm/Message/Message.test.js +75 -79
  282. package/dist/esm/Message/MessageInput.d.ts +2 -2
  283. package/dist/esm/Message/MessageInput.js +5 -11
  284. package/dist/esm/Message/MessageLoading.d.ts +1 -2
  285. package/dist/esm/Message/MessageLoading.js +2 -4
  286. package/dist/esm/Message/QuickResponse/QuickResponse.d.ts +2 -2
  287. package/dist/esm/Message/QuickResponse/QuickResponse.js +7 -6
  288. package/dist/esm/Message/QuickStarts/FallbackImg.d.ts +2 -2
  289. package/dist/esm/Message/QuickStarts/FallbackImg.js +5 -4
  290. package/dist/esm/Message/QuickStarts/QuickStartTile.d.ts +2 -2
  291. package/dist/esm/Message/QuickStarts/QuickStartTile.js +7 -20
  292. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
  293. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.js +9 -15
  294. package/dist/esm/Message/QuickStarts/QuickStartTileDescription.test.js +5 -5
  295. package/dist/esm/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
  296. package/dist/esm/Message/QuickStarts/QuickStartTileHeader.js +2 -3
  297. package/dist/esm/Message/QuickStarts/types.d.ts +4 -3
  298. package/dist/esm/Message/TableMessage/TableMessage.d.ts +1 -2
  299. package/dist/esm/Message/TableMessage/TableMessage.js +8 -7
  300. package/dist/esm/Message/TableMessage/TbodyMessage.d.ts +2 -3
  301. package/dist/esm/Message/TableMessage/TbodyMessage.js +7 -6
  302. package/dist/esm/Message/TableMessage/TdMessage.d.ts +1 -2
  303. package/dist/esm/Message/TableMessage/TdMessage.js +2 -5
  304. package/dist/esm/Message/TableMessage/ThMessage.d.ts +1 -2
  305. package/dist/esm/Message/TableMessage/ThMessage.js +2 -5
  306. package/dist/esm/Message/TableMessage/TheadMessage.d.ts +1 -2
  307. package/dist/esm/Message/TableMessage/TheadMessage.js +2 -5
  308. package/dist/esm/Message/TableMessage/TrMessage.d.ts +2 -3
  309. package/dist/esm/Message/TableMessage/TrMessage.js +8 -7
  310. package/dist/esm/Message/TextMessage/TextMessage.d.ts +1 -2
  311. package/dist/esm/Message/TextMessage/TextMessage.js +2 -6
  312. package/dist/esm/Message/UserFeedback/CloseButton.d.ts +2 -2
  313. package/dist/esm/Message/UserFeedback/CloseButton.js +2 -5
  314. package/dist/esm/Message/UserFeedback/UserFeedback.d.ts +2 -2
  315. package/dist/esm/Message/UserFeedback/UserFeedback.js +12 -23
  316. package/dist/esm/Message/UserFeedback/UserFeedback.test.js +21 -21
  317. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
  318. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.js +20 -44
  319. package/dist/esm/Message/UserFeedback/UserFeedbackComplete.test.js +26 -36
  320. package/dist/esm/MessageBar/AttachButton.d.ts +1 -2
  321. package/dist/esm/MessageBar/AttachButton.js +6 -12
  322. package/dist/esm/MessageBar/AttachButton.test.js +10 -10
  323. package/dist/esm/MessageBar/MessageBar.d.ts +2 -2
  324. package/dist/esm/MessageBar/MessageBar.js +21 -27
  325. package/dist/esm/MessageBar/MessageBar.test.js +34 -48
  326. package/dist/esm/MessageBar/MicrophoneButton.d.ts +2 -2
  327. package/dist/esm/MessageBar/MicrophoneButton.js +7 -11
  328. package/dist/esm/MessageBar/SendButton.d.ts +3 -2
  329. package/dist/esm/MessageBar/SendButton.js +3 -8
  330. package/dist/esm/MessageBar/SendButton.test.js +4 -4
  331. package/dist/esm/MessageBar/StopButton.d.ts +3 -2
  332. package/dist/esm/MessageBar/StopButton.js +3 -9
  333. package/dist/esm/MessageBar/StopButton.test.js +4 -4
  334. package/dist/esm/MessageBox/JumpButton.d.ts +2 -2
  335. package/dist/esm/MessageBox/JumpButton.js +2 -7
  336. package/dist/esm/MessageBox/JumpButton.test.js +5 -5
  337. package/dist/esm/MessageBox/MessageBox.d.ts +3 -3
  338. package/dist/esm/MessageBox/MessageBox.js +13 -20
  339. package/dist/esm/MessageBox/MessageBox.test.js +7 -10
  340. package/dist/esm/PreviewAttachment/PreviewAttachment.d.ts +12 -2
  341. package/dist/esm/PreviewAttachment/PreviewAttachment.js +3 -6
  342. package/dist/esm/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
  343. package/dist/esm/PreviewAttachment/PreviewAttachment.test.js +30 -5
  344. package/dist/esm/ResponseActions/ResponseActionButton.d.ts +3 -3
  345. package/dist/esm/ResponseActions/ResponseActionButton.js +5 -5
  346. package/dist/esm/ResponseActions/ResponseActionButton.test.js +7 -7
  347. package/dist/esm/ResponseActions/ResponseActions.d.ts +2 -2
  348. package/dist/esm/ResponseActions/ResponseActions.js +10 -14
  349. package/dist/esm/ResponseActions/ResponseActions.test.js +15 -15
  350. package/dist/esm/Settings/SettingsForm.d.ts +2 -2
  351. package/dist/esm/Settings/SettingsForm.js +2 -5
  352. package/dist/esm/Settings/SettingsForm.test.js +6 -6
  353. package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
  354. package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -8
  355. package/dist/esm/SourcesCard/SourcesCard.d.ts +2 -2
  356. package/dist/esm/SourcesCard/SourcesCard.js +16 -39
  357. package/dist/esm/SourcesCard/SourcesCard.test.js +19 -19
  358. package/dist/esm/TermsOfUse/TermsOfUse.d.ts +3 -3
  359. package/dist/esm/TermsOfUse/TermsOfUse.js +4 -16
  360. package/dist/esm/TermsOfUse/TermsOfUse.test.js +10 -12
  361. package/package.json +3 -5
  362. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachMenu.tsx +9 -9
  363. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentEdit.tsx +5 -5
  364. package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentError.tsx +2 -2
  365. package/patternfly-docs/content/extensions/chatbot/examples/Messages/BotMessage.tsx +10 -12
  366. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetails.tsx +2 -2
  367. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetailsLabel.tsx +9 -9
  368. package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDropZone.tsx +4 -4
  369. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithAttachment.tsx +7 -7
  370. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithCustomResponseActions.tsx +2 -2
  371. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedback.tsx +4 -4
  372. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedbackTimeout.tsx +3 -3
  373. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickResponses.tsx +2 -2
  374. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickStart.tsx +2 -2
  375. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithResponseActions.tsx +2 -2
  376. package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithSources.tsx +3 -3
  377. package/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md +1 -0
  378. package/patternfly-docs/content/extensions/chatbot/examples/Messages/PreviewAttachment.tsx +5 -5
  379. package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessage.tsx +11 -14
  380. package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx +4 -4
  381. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotContainer.tsx +59 -36
  382. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFooter.tsx +2 -2
  383. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFootnote.tsx +2 -2
  384. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderBasic.tsx +10 -13
  385. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawer.tsx +10 -10
  386. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerNavigation.tsx +5 -5
  387. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerResizable.tsx +5 -5
  388. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithActions.tsx +4 -4
  389. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithSelection.tsx +5 -5
  390. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderTitle.tsx +59 -34
  391. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBar.tsx +2 -2
  392. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarAttach.tsx +9 -9
  393. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarDisabled.tsx +3 -3
  394. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarLanguage.tsx +2 -2
  395. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarStop.tsx +2 -2
  396. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotModal.tsx +74 -37
  397. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotToggleBasic.tsx +3 -3
  398. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomeInteraction.tsx +7 -7
  399. package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomePrompt.tsx +3 -3
  400. package/patternfly-docs/content/extensions/chatbot/examples/UI/CompactSettings.tsx +16 -23
  401. package/patternfly-docs/content/extensions/chatbot/examples/UI/CustomClosedIcon.tsx +3 -3
  402. package/patternfly-docs/content/extensions/chatbot/examples/UI/Settings.tsx +16 -23
  403. package/patternfly-docs/content/extensions/chatbot/examples/UI/SkipToContent.tsx +5 -5
  404. package/patternfly-docs/content/extensions/chatbot/examples/UI/SquareChatbotToggle.tsx +3 -3
  405. package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUse.tsx +91 -48
  406. package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUseCompact.tsx +82 -39
  407. package/patternfly-docs/content/extensions/chatbot/examples/UI/UI.md +3 -0
  408. package/patternfly-docs/content/extensions/chatbot/examples/demos/AttachmentDemos.md +1 -0
  409. package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.md +1 -0
  410. package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.tsx +17 -23
  411. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachment.tsx +13 -13
  412. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachmentMenu.tsx +14 -14
  413. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotCompact.tsx +17 -23
  414. package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotInDrawer.tsx +15 -20
  415. package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedChatbot.tsx +15 -20
  416. package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedComparisonChatbot.tsx +12 -12
  417. package/patternfly-docs/content/extensions/chatbot/examples/demos/Feedback.tsx +7 -7
  418. package/src/AttachMenu/AttachMenu.tsx +2 -2
  419. package/src/AttachmentEdit/AttachmentEdit.test.tsx +46 -2
  420. package/src/AttachmentEdit/AttachmentEdit.tsx +25 -7
  421. package/src/Chatbot/Chatbot.test.tsx +0 -1
  422. package/src/Chatbot/Chatbot.tsx +5 -3
  423. package/src/ChatbotAlert/ChatbotAlert.test.tsx +0 -1
  424. package/src/ChatbotAlert/ChatbotAlert.tsx +2 -2
  425. package/src/ChatbotContent/ChatbotContent.test.tsx +0 -1
  426. package/src/ChatbotContent/ChatbotContent.tsx +3 -3
  427. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.tsx +0 -1
  428. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.tsx +6 -4
  429. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.tsx +3 -3
  430. package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.tsx +8 -6
  431. package/src/ChatbotConversationHistoryNav/EmptyState.tsx +2 -2
  432. package/src/ChatbotConversationHistoryNav/LoadingState.tsx +2 -2
  433. package/src/ChatbotFooter/ChatbotFooter.test.tsx +0 -1
  434. package/src/ChatbotFooter/ChatbotFooter.tsx +3 -3
  435. package/src/ChatbotFooter/ChatbotFooternote.test.tsx +0 -1
  436. package/src/ChatbotFooter/ChatbotFootnote.tsx +6 -4
  437. package/src/ChatbotHeader/ChatbotHeader.test.tsx +0 -1
  438. package/src/ChatbotHeader/ChatbotHeader.tsx +3 -6
  439. package/src/ChatbotHeader/ChatbotHeaderActions.test.tsx +0 -1
  440. package/src/ChatbotHeader/ChatbotHeaderActions.tsx +2 -2
  441. package/src/ChatbotHeader/ChatbotHeaderCloseButton.test.tsx +0 -1
  442. package/src/ChatbotHeader/ChatbotHeaderCloseButton.tsx +5 -4
  443. package/src/ChatbotHeader/ChatbotHeaderMain.test.tsx +0 -1
  444. package/src/ChatbotHeader/ChatbotHeaderMain.tsx +2 -2
  445. package/src/ChatbotHeader/ChatbotHeaderMenu.test.tsx +0 -1
  446. package/src/ChatbotHeader/ChatbotHeaderMenu.tsx +7 -7
  447. package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.tsx +9 -1
  448. package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.tsx +12 -5
  449. package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.tsx +9 -1
  450. package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.tsx +20 -6
  451. package/src/ChatbotHeader/ChatbotHeaderTitle.test.tsx +0 -1
  452. package/src/ChatbotHeader/ChatbotHeaderTitle.tsx +2 -2
  453. package/src/ChatbotModal/ChatbotModal.test.tsx +0 -1
  454. package/src/ChatbotModal/ChatbotModal.tsx +2 -2
  455. package/src/ChatbotPopover/ChatbotPopover.tsx +3 -3
  456. package/src/ChatbotToggle/ChatbotToggle.test.tsx +0 -1
  457. package/src/ChatbotToggle/ChatbotToggle.tsx +5 -3
  458. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.tsx +0 -1
  459. package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.tsx +2 -2
  460. package/src/CodeModal/CodeModal.test.tsx +29 -2
  461. package/src/CodeModal/CodeModal.tsx +18 -8
  462. package/src/Compare/Compare.test.tsx +0 -1
  463. package/src/Compare/Compare.tsx +7 -6
  464. package/src/FileDetails/FileDetails.test.tsx +0 -1
  465. package/src/FileDetails/FileDetails.tsx +1 -1
  466. package/src/FileDetailsLabel/FileDetailsLabel.test.tsx +0 -1
  467. package/src/FileDetailsLabel/FileDetailsLabel.tsx +1 -1
  468. package/src/FileDropZone/FileDropZone.test.tsx +0 -1
  469. package/src/FileDropZone/FileDropZone.tsx +4 -3
  470. package/src/LoadingMessage/LoadingMessage.test.tsx +0 -1
  471. package/src/LoadingMessage/LoadingMessage.tsx +2 -2
  472. package/src/Message/CodeBlockMessage/CodeBlockMessage.tsx +7 -7
  473. package/src/Message/ErrorMessage/ErrorMessage.tsx +0 -1
  474. package/src/Message/ImageMessage/ImageMessage.tsx +1 -2
  475. package/src/Message/LinkMessage/LinkMessage.tsx +0 -1
  476. package/src/Message/ListMessage/ListItemMessage.tsx +0 -1
  477. package/src/Message/ListMessage/OrderedListMessage.tsx +0 -1
  478. package/src/Message/ListMessage/UnorderedListMessage.tsx +0 -1
  479. package/src/Message/Message.test.tsx +3 -3
  480. package/src/Message/Message.tsx +12 -13
  481. package/src/Message/MessageInput.tsx +5 -5
  482. package/src/Message/MessageLoading.tsx +0 -2
  483. package/src/Message/QuickResponse/QuickResponse.tsx +4 -3
  484. package/src/Message/QuickStarts/FallbackImg.tsx +4 -3
  485. package/src/Message/QuickStarts/QuickStartTile.tsx +3 -3
  486. package/src/Message/QuickStarts/QuickStartTileDescription.test.tsx +0 -1
  487. package/src/Message/QuickStarts/QuickStartTileDescription.tsx +4 -3
  488. package/src/Message/QuickStarts/QuickStartTileHeader.tsx +2 -2
  489. package/src/Message/QuickStarts/types.ts +4 -3
  490. package/src/Message/TableMessage/TableMessage.tsx +4 -4
  491. package/src/Message/TableMessage/TbodyMessage.tsx +3 -3
  492. package/src/Message/TableMessage/TdMessage.tsx +1 -2
  493. package/src/Message/TableMessage/ThMessage.tsx +1 -2
  494. package/src/Message/TableMessage/TheadMessage.tsx +3 -2
  495. package/src/Message/TableMessage/TrMessage.tsx +4 -4
  496. package/src/Message/TextMessage/TextMessage.tsx +1 -2
  497. package/src/Message/UserFeedback/CloseButton.tsx +2 -2
  498. package/src/Message/UserFeedback/UserFeedback.test.tsx +0 -1
  499. package/src/Message/UserFeedback/UserFeedback.tsx +8 -6
  500. package/src/Message/UserFeedback/UserFeedbackComplete.test.tsx +0 -1
  501. package/src/Message/UserFeedback/UserFeedbackComplete.tsx +16 -14
  502. package/src/MessageBar/AttachButton.test.tsx +0 -1
  503. package/src/MessageBar/AttachButton.tsx +5 -3
  504. package/src/MessageBar/MessageBar.test.tsx +0 -1
  505. package/src/MessageBar/MessageBar.tsx +19 -18
  506. package/src/MessageBar/MicrophoneButton.tsx +8 -6
  507. package/src/MessageBar/SendButton.test.tsx +0 -1
  508. package/src/MessageBar/SendButton.tsx +3 -2
  509. package/src/MessageBar/StopButton.test.tsx +0 -1
  510. package/src/MessageBar/StopButton.tsx +3 -2
  511. package/src/MessageBox/JumpButton.test.tsx +0 -1
  512. package/src/MessageBox/JumpButton.tsx +2 -2
  513. package/src/MessageBox/MessageBox.test.tsx +2 -2
  514. package/src/MessageBox/MessageBox.tsx +15 -13
  515. package/src/PreviewAttachment/PreviewAttachment.test.tsx +44 -2
  516. package/src/PreviewAttachment/PreviewAttachment.tsx +24 -6
  517. package/src/ResponseActions/ResponseActionButton.test.tsx +0 -1
  518. package/src/ResponseActions/ResponseActionButton.tsx +4 -3
  519. package/src/ResponseActions/ResponseActions.test.tsx +0 -1
  520. package/src/ResponseActions/ResponseActions.tsx +8 -7
  521. package/src/Settings/SettingsForm.test.tsx +0 -1
  522. package/src/Settings/SettingsForm.tsx +2 -7
  523. package/src/SourceDetailsMenuItem/SourceDetailsMenuItem.tsx +2 -2
  524. package/src/SourcesCard/SourcesCard.test.tsx +0 -1
  525. package/src/SourcesCard/SourcesCard.tsx +7 -7
  526. package/src/TermsOfUse/TermsOfUse.test.tsx +0 -1
  527. package/src/TermsOfUse/TermsOfUse.tsx +6 -5
  528. package/tsconfig.cjs.json +0 -1
  529. package/tsconfig.json +3 -3
@@ -1,7 +1,9 @@
1
1
  // ============================================================================
2
2
  // Chatbot Header - Chatbot Conversation History Nav
3
3
  // ============================================================================
4
- import React from 'react';
4
+ import type { KeyboardEvent, FunctionComponent } from 'react';
5
+
6
+ import { useRef, Fragment } from 'react';
5
7
 
6
8
  // Import PatternFly components
7
9
  import {
@@ -120,7 +122,7 @@ export interface ChatbotConversationHistoryNavProps extends DrawerProps {
120
122
  isCompact?: boolean;
121
123
  }
122
124
 
123
- export const ChatbotConversationHistoryNav: React.FunctionComponent<ChatbotConversationHistoryNavProps> = ({
125
+ export const ChatbotConversationHistoryNav: FunctionComponent<ChatbotConversationHistoryNavProps> = ({
124
126
  onDrawerToggle,
125
127
  isDrawerOpen,
126
128
  setIsDrawerOpen,
@@ -152,7 +154,7 @@ export const ChatbotConversationHistoryNav: React.FunctionComponent<ChatbotConve
152
154
  isCompact,
153
155
  ...props
154
156
  }: ChatbotConversationHistoryNavProps) => {
155
- const drawerRef = React.useRef<HTMLDivElement>(null);
157
+ const drawerRef = useRef<HTMLDivElement>(null);
156
158
 
157
159
  const onExpand = () => {
158
160
  drawerRef.current && drawerRef.current.focus();
@@ -190,7 +192,7 @@ export const ChatbotConversationHistoryNav: React.FunctionComponent<ChatbotConve
190
192
  return (
191
193
  <MenuList>
192
194
  {conversations.map((conversation) => (
193
- <React.Fragment key={conversation.id}>{getNavItem(conversation)}</React.Fragment>
195
+ <Fragment key={conversation.id}>{getNavItem(conversation)}</Fragment>
194
196
  ))}
195
197
  </MenuList>
196
198
  );
@@ -202,7 +204,7 @@ export const ChatbotConversationHistoryNav: React.FunctionComponent<ChatbotConve
202
204
  <MenuGroup className="pf-chatbot__menu-item-header" label={navGroup} key={navGroup}>
203
205
  <MenuList>
204
206
  {conversations[navGroup].map((conversation) => (
205
- <React.Fragment key={conversation.id}>{getNavItem(conversation)}</React.Fragment>
207
+ <Fragment key={conversation.id}>{getNavItem(conversation)}</Fragment>
206
208
  ))}
207
209
  </MenuList>
208
210
  </MenuGroup>
@@ -283,7 +285,7 @@ export const ChatbotConversationHistoryNav: React.FunctionComponent<ChatbotConve
283
285
 
284
286
  // An onKeyDown property must be passed to the Drawer component to handle closing
285
287
  // the drawer panel and deactivating the focus trap via the Escape key.
286
- const onEscape = (event: React.KeyboardEvent) => {
288
+ const onEscape = (event: KeyboardEvent) => {
287
289
  if (event.key === 'Escape') {
288
290
  // prevents using escape key on menu buttons from closing the panel, but I'm not sure if this is allowed
289
291
  if (event.target instanceof HTMLInputElement && event.target.type !== 'button') {
@@ -6,7 +6,7 @@ import {
6
6
  EmptyStateFooter,
7
7
  EmptyStateProps
8
8
  } from '@patternfly/react-core';
9
- import React from 'react';
9
+ import type { FunctionComponent } from 'react';
10
10
 
11
11
  export interface HistoryEmptyStateProps extends EmptyStateProps {
12
12
  onClick?: () => void;
@@ -16,7 +16,7 @@ export interface HistoryEmptyStateProps extends EmptyStateProps {
16
16
  hasButton?: boolean;
17
17
  }
18
18
 
19
- export const HistoryEmptyState: React.FunctionComponent<HistoryEmptyStateProps> = ({
19
+ export const HistoryEmptyState: FunctionComponent<HistoryEmptyStateProps> = ({
20
20
  bodyText,
21
21
  buttonIcon,
22
22
  buttonText,
@@ -1,7 +1,7 @@
1
1
  import { Skeleton, SkeletonProps } from '@patternfly/react-core';
2
- import React from 'react';
2
+ import type { FunctionComponent } from 'react';
3
3
 
4
- export const LoadingState: React.FunctionComponent<SkeletonProps> = ({ screenreaderText, ...rest }: SkeletonProps) => (
4
+ export const LoadingState: FunctionComponent<SkeletonProps> = ({ screenreaderText, ...rest }: SkeletonProps) => (
5
5
  <div className="pf-chatbot__history-loading">
6
6
  <div className="pf-chatbot__history-loading-block">
7
7
  <Skeleton
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import ChatbotFooter from './ChatbotFooter';
4
3
  import '@testing-library/jest-dom';
@@ -8,11 +8,11 @@
8
8
  // - Footnote
9
9
  // - Footnote popover
10
10
 
11
- import React from 'react';
11
+ import type { HTMLProps, FunctionComponent } from 'react';
12
12
 
13
13
  import { Divider } from '@patternfly/react-core';
14
14
 
15
- export interface ChatbotFooterProps extends React.HTMLProps<HTMLDivElement> {
15
+ export interface ChatbotFooterProps extends HTMLProps<HTMLDivElement> {
16
16
  /** Children for the Footer that supports MessageBar and FootNote components*/
17
17
  children?: React.ReactNode;
18
18
  /** Custom classname for the Footer component */
@@ -20,7 +20,7 @@ export interface ChatbotFooterProps extends React.HTMLProps<HTMLDivElement> {
20
20
  isCompact?: boolean;
21
21
  }
22
22
 
23
- export const ChatbotFooter: React.FunctionComponent<ChatbotFooterProps> = ({
23
+ export const ChatbotFooter: FunctionComponent<ChatbotFooterProps> = ({
24
24
  children,
25
25
  className,
26
26
  isCompact,
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { act, fireEvent, render, screen, waitFor } from '@testing-library/react';
3
2
  import ChatbotFootnote from './ChatbotFootnote';
4
3
 
@@ -2,7 +2,9 @@
2
2
  // Chatbot Footer - Footnote
3
3
  // ============================================================================
4
4
 
5
- import React from 'react';
5
+ import type { HTMLProps, FunctionComponent } from 'react';
6
+
7
+ import { useState } from 'react';
6
8
 
7
9
  // Import Patternfly components
8
10
  import { Button, Content, ContentVariants, Flex, PopoverProps } from '@patternfly/react-core';
@@ -14,7 +16,7 @@ import { ExternalLinkAltIcon } from '@patternfly/react-icons/dist/esm/icons/exte
14
16
  // Import Chatbot components
15
17
  import ChatbotPopover from '../ChatbotPopover/ChatbotPopover';
16
18
 
17
- export interface ChatbotFootnoteProps extends React.HTMLProps<HTMLDivElement> {
19
+ export interface ChatbotFootnoteProps extends Omit<HTMLProps<HTMLDivElement>, 'popover'> {
18
20
  /** Label to show for the footnote */
19
21
  label: string;
20
22
  /** Config for the popover which opens up when footnote is clicked */
@@ -58,14 +60,14 @@ export interface ChatbotFootnotePopoverLink {
58
60
  url: string;
59
61
  }
60
62
 
61
- export const ChatbotFootnote: React.FunctionComponent<ChatbotFootnoteProps> = ({
63
+ export const ChatbotFootnote: FunctionComponent<ChatbotFootnoteProps> = ({
62
64
  label,
63
65
  popover,
64
66
  className,
65
67
  ...props
66
68
  }: ChatbotFootnoteProps) => {
67
69
  // Popover visibility state
68
- const [isVisible, setIsVisible] = React.useState<boolean>(false);
70
+ const [isVisible, setIsVisible] = useState<boolean>(false);
69
71
 
70
72
  // Define popover body content
71
73
  const popoverBodyContent = (
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import ChatbotHeader from './ChatbotHeader';
4
3
 
@@ -1,18 +1,15 @@
1
- import React from 'react';
1
+ import type { HTMLProps, FunctionComponent } from 'react';
2
2
 
3
3
  import { Divider } from '@patternfly/react-core';
4
4
 
5
- export interface ChatbotHeaderProps extends React.HTMLProps<HTMLDivElement> {
5
+ export interface ChatbotHeaderProps extends HTMLProps<HTMLDivElement> {
6
6
  /** Content to be displayed in the chatbot header */
7
7
  children: React.ReactNode;
8
8
  /** Custom classname for the header component */
9
9
  className?: string;
10
10
  }
11
11
 
12
- export const ChatbotHeader: React.FunctionComponent<ChatbotHeaderProps> = ({
13
- className,
14
- children
15
- }: ChatbotHeaderProps) => (
12
+ export const ChatbotHeader: FunctionComponent<ChatbotHeaderProps> = ({ className, children }: ChatbotHeaderProps) => (
16
13
  <div className="pf-chatbot__header-container">
17
14
  <div className={`pf-chatbot__header${className ? ` ${className}` : ''}`}>{children}</div>
18
15
  <Divider className="pf-chatbot__header__divider" />
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import ChatbotHeaderActions from './ChatbotHeaderActions';
4
3
 
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { FunctionComponent } from 'react';
2
2
 
3
3
  export interface ChatbotHeaderActionsProps {
4
4
  /** Content to be displayed in the chatbot header */
@@ -7,7 +7,7 @@ export interface ChatbotHeaderActionsProps {
7
7
  className?: string;
8
8
  }
9
9
 
10
- export const ChatbotHeaderActions: React.FunctionComponent<ChatbotHeaderActionsProps> = ({
10
+ export const ChatbotHeaderActions: FunctionComponent<ChatbotHeaderActionsProps> = ({
11
11
  className,
12
12
  children
13
13
  }: ChatbotHeaderActionsProps) => <div className={`pf-chatbot__actions ${className || ''}`}>{children}</div>;
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { fireEvent, render, screen } from '@testing-library/react';
3
2
  import { ChatbotHeaderCloseButton } from './ChatbotHeaderCloseButton';
4
3
  import '@testing-library/jest-dom';
@@ -1,4 +1,5 @@
1
- import React from 'react';
1
+ import type { Ref, FunctionComponent } from 'react';
2
+ import { forwardRef } from 'react';
2
3
 
3
4
  import { Button, ButtonProps, Icon, Tooltip, TooltipProps } from '@patternfly/react-core';
4
5
  import { CloseIcon } from '@patternfly/react-icons';
@@ -20,7 +21,7 @@ export interface ChatbotHeaderCloseButtonProps extends ButtonProps {
20
21
  isCompact?: boolean;
21
22
  }
22
23
 
23
- const ChatbotHeaderCloseButtonBase: React.FunctionComponent<ChatbotHeaderCloseButtonProps> = ({
24
+ const ChatbotHeaderCloseButtonBase: FunctionComponent<ChatbotHeaderCloseButtonProps> = ({
24
25
  className,
25
26
  onClick,
26
27
  tooltipProps,
@@ -56,8 +57,8 @@ const ChatbotHeaderCloseButtonBase: React.FunctionComponent<ChatbotHeaderCloseBu
56
57
  </div>
57
58
  );
58
59
 
59
- export const ChatbotHeaderCloseButton = React.forwardRef(
60
- (props: ChatbotHeaderCloseButtonProps, ref: React.Ref<HTMLButtonElement>) => (
60
+ export const ChatbotHeaderCloseButton = forwardRef(
61
+ (props: ChatbotHeaderCloseButtonProps, ref: Ref<HTMLButtonElement>) => (
61
62
  <ChatbotHeaderCloseButtonBase innerRef={ref} {...props} />
62
63
  )
63
64
  );
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import ChatbotHeaderMain from './ChatbotHeaderMain';
4
3
 
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { FunctionComponent } from 'react';
2
2
 
3
3
  export interface ChatbotHeaderMainProps {
4
4
  /** Custom classname for the header component */
@@ -7,7 +7,7 @@ export interface ChatbotHeaderMainProps {
7
7
  children: React.ReactNode;
8
8
  }
9
9
 
10
- export const ChatbotHeaderMain: React.FunctionComponent<ChatbotHeaderMainProps> = ({
10
+ export const ChatbotHeaderMain: FunctionComponent<ChatbotHeaderMainProps> = ({
11
11
  className,
12
12
  children
13
13
  }: ChatbotHeaderMainProps) => (
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { fireEvent, render, screen } from '@testing-library/react';
3
2
  import { ChatbotHeaderMenu } from './ChatbotHeaderMenu';
4
3
  import '@testing-library/jest-dom';
@@ -1,4 +1,5 @@
1
- import React from 'react';
1
+ import type { Ref, FunctionComponent } from 'react';
2
+ import { forwardRef } from 'react';
2
3
 
3
4
  import { Button, ButtonProps, Icon, Tooltip, TooltipProps } from '@patternfly/react-core';
4
5
  import BarsIcon from '@patternfly/react-icons/dist/esm/icons/bars-icon';
@@ -16,10 +17,11 @@ export interface ChatbotHeaderMenuProps extends ButtonProps {
16
17
  innerRef?: React.Ref<HTMLButtonElement>;
17
18
  /** Content used in tooltip */
18
19
  tooltipContent?: string;
20
+ /** Sets menu to compact styling. */
19
21
  isCompact?: boolean;
20
22
  }
21
23
 
22
- const ChatbotHeaderMenuBase: React.FunctionComponent<ChatbotHeaderMenuProps> = ({
24
+ const ChatbotHeaderMenuBase: FunctionComponent<ChatbotHeaderMenuProps> = ({
23
25
  className,
24
26
  onMenuToggle,
25
27
  tooltipProps,
@@ -55,8 +57,6 @@ const ChatbotHeaderMenuBase: React.FunctionComponent<ChatbotHeaderMenuProps> = (
55
57
  </div>
56
58
  );
57
59
 
58
- export const ChatbotHeaderMenu = React.forwardRef(
59
- (props: ChatbotHeaderMenuProps, ref: React.Ref<HTMLButtonElement>) => (
60
- <ChatbotHeaderMenuBase innerRef={ref} {...props} />
61
- )
62
- );
60
+ export const ChatbotHeaderMenu = forwardRef((props: ChatbotHeaderMenuProps, ref: Ref<HTMLButtonElement>) => (
61
+ <ChatbotHeaderMenuBase innerRef={ref} {...props} />
62
+ ));
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { DropdownItem } from '@patternfly/react-core';
3
2
  import { act, fireEvent, render, screen, waitFor } from '@testing-library/react';
4
3
  import { ChatbotHeaderOptionsDropdown } from './ChatbotHeaderOptionsDropdown';
@@ -48,4 +47,13 @@ describe('ChatbotHeaderOptionsDropdown', () => {
48
47
  render(<ChatbotHeaderOptionsDropdown isCompact>{dropdownItems}</ChatbotHeaderOptionsDropdown>);
49
48
  expect(screen.getByRole('button', { name: 'Chatbot options' })).toHaveClass('pf-m-compact');
50
49
  });
50
+
51
+ it('should handle toggleProps', () => {
52
+ render(
53
+ <ChatbotHeaderOptionsDropdown isCompact toggleProps={{ isDisabled: true }}>
54
+ {dropdownItems}
55
+ </ChatbotHeaderOptionsDropdown>
56
+ );
57
+ expect(screen.getByRole('button', { name: /Chatbot options/i })).toBeDisabled();
58
+ });
51
59
  });
@@ -1,4 +1,5 @@
1
- import React from 'react';
1
+ import type { FunctionComponent, Ref } from 'react';
2
+ import { useState } from 'react';
2
3
 
3
4
  import {
4
5
  Tooltip,
@@ -7,7 +8,8 @@ import {
7
8
  DropdownProps,
8
9
  MenuToggle,
9
10
  MenuToggleElement,
10
- Icon
11
+ Icon,
12
+ MenuToggleProps
11
13
  } from '@patternfly/react-core';
12
14
  import EllipsisIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
13
15
 
@@ -20,21 +22,25 @@ export interface ChatbotHeaderOptionsDropdownProps extends Omit<DropdownProps, '
20
22
  tooltipProps?: TooltipProps;
21
23
  /** Aria label for menu toggle */
22
24
  menuToggleAriaLabel?: string;
25
+ /** Sets menu to compact styling. */
23
26
  isCompact?: boolean;
27
+ /** Additional props passed to toggle */
28
+ toggleProps?: MenuToggleProps;
24
29
  }
25
30
 
26
- export const ChatbotHeaderOptionsDropdown: React.FunctionComponent<ChatbotHeaderOptionsDropdownProps> = ({
31
+ export const ChatbotHeaderOptionsDropdown: FunctionComponent<ChatbotHeaderOptionsDropdownProps> = ({
27
32
  className,
28
33
  children,
29
34
  onSelect,
30
35
  tooltipProps,
31
36
  menuToggleAriaLabel = 'Chatbot options',
32
37
  isCompact,
38
+ toggleProps,
33
39
  ...props
34
40
  }: ChatbotHeaderOptionsDropdownProps) => {
35
- const [isOptionsMenuOpen, setIsOptionsMenuOpen] = React.useState(false);
41
+ const [isOptionsMenuOpen, setIsOptionsMenuOpen] = useState(false);
36
42
 
37
- const toggle = (toggleRef: React.Ref<MenuToggleElement>) => (
43
+ const toggle = (toggleRef: Ref<MenuToggleElement>) => (
38
44
  <Tooltip
39
45
  className="pf-chatbot__tooltip"
40
46
  content="Chatbot options"
@@ -56,6 +62,7 @@ export const ChatbotHeaderOptionsDropdown: React.FunctionComponent<ChatbotHeader
56
62
  isExpanded={isOptionsMenuOpen}
57
63
  onClick={() => setIsOptionsMenuOpen(!isOptionsMenuOpen)}
58
64
  size={isCompact ? 'sm' : undefined}
65
+ {...toggleProps}
59
66
  />
60
67
  </Tooltip>
61
68
  );
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { DropdownItem } from '@patternfly/react-core';
3
2
  import { act, fireEvent, render, screen, waitFor } from '@testing-library/react';
4
3
  import { ChatbotHeaderSelectorDropdown } from './ChatbotHeaderSelectorDropdown';
@@ -50,4 +49,13 @@ describe('ChatbotHeaderSelectorDropdown', () => {
50
49
  );
51
50
  expect(screen.getByRole('button', { name: /Select model/i })).toHaveClass('pf-m-compact');
52
51
  });
52
+
53
+ it('should handle toggleProps', () => {
54
+ render(
55
+ <ChatbotHeaderSelectorDropdown value="Option 1" toggleProps={{ isDisabled: true }}>
56
+ {dropdownItems}
57
+ </ChatbotHeaderSelectorDropdown>
58
+ );
59
+ expect(screen.getByRole('button', { name: /Select model/i })).toBeDisabled();
60
+ });
53
61
  });
@@ -1,6 +1,15 @@
1
- import React from 'react';
1
+ import type { FunctionComponent, Ref } from 'react';
2
+ import { useState } from 'react';
2
3
 
3
- import { Tooltip, TooltipProps, Dropdown, DropdownProps, MenuToggle, MenuToggleElement } from '@patternfly/react-core';
4
+ import {
5
+ Tooltip,
6
+ TooltipProps,
7
+ Dropdown,
8
+ DropdownProps,
9
+ MenuToggle,
10
+ MenuToggleElement,
11
+ MenuToggleProps
12
+ } from '@patternfly/react-core';
4
13
 
5
14
  export interface ChatbotHeaderSelectorDropdownProps extends Omit<DropdownProps, 'toggle'> {
6
15
  /** Value of the selected dropdown item */
@@ -15,10 +24,13 @@ export interface ChatbotHeaderSelectorDropdownProps extends Omit<DropdownProps,
15
24
  menuToggleAriaLabel?: string;
16
25
  /** Text displayed in Tooltip wrapping the display mode dropdown */
17
26
  tooltipContent?: string;
27
+ /** Sets menu to compact styling. */
18
28
  isCompact?: boolean;
29
+ /** Additional props passed to toggle */
30
+ toggleProps?: MenuToggleProps;
19
31
  }
20
32
 
21
- export const ChatbotHeaderSelectorDropdown: React.FunctionComponent<ChatbotHeaderSelectorDropdownProps> = ({
33
+ export const ChatbotHeaderSelectorDropdown: FunctionComponent<ChatbotHeaderSelectorDropdownProps> = ({
22
34
  value,
23
35
  className,
24
36
  children,
@@ -27,12 +39,13 @@ export const ChatbotHeaderSelectorDropdown: React.FunctionComponent<ChatbotHeade
27
39
  tooltipContent = 'Select model',
28
40
  menuToggleAriaLabel,
29
41
  isCompact,
42
+ toggleProps,
30
43
  ...props
31
44
  }: ChatbotHeaderSelectorDropdownProps) => {
32
- const [isOptionsMenuOpen, setIsOptionsMenuOpen] = React.useState(false);
33
- const [defaultAriaLabel, setDefaultAriaLabel] = React.useState('Select model');
45
+ const [isOptionsMenuOpen, setIsOptionsMenuOpen] = useState(false);
46
+ const [defaultAriaLabel, setDefaultAriaLabel] = useState('Select model');
34
47
 
35
- const toggle = (toggleRef: React.Ref<MenuToggleElement>) => (
48
+ const toggle = (toggleRef: Ref<MenuToggleElement>) => (
36
49
  <Tooltip
37
50
  className="pf-chatbot__tooltip"
38
51
  content={tooltipContent}
@@ -49,6 +62,7 @@ export const ChatbotHeaderSelectorDropdown: React.FunctionComponent<ChatbotHeade
49
62
  onClick={() => setIsOptionsMenuOpen(!isOptionsMenuOpen)}
50
63
  size={isCompact ? 'sm' : undefined}
51
64
  className={`${isCompact ? 'pf-m-compact' : ''}`}
65
+ {...toggleProps}
52
66
  >
53
67
  {value}
54
68
  </MenuToggle>
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import { ChatbotDisplayMode } from '../Chatbot/Chatbot';
4
3
  import ChatbotHeaderTitle from './ChatbotHeaderTitle';
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { FunctionComponent } from 'react';
2
2
 
3
3
  import { SplitItem } from '@patternfly/react-core';
4
4
  import { ChatbotDisplayMode } from '../Chatbot/Chatbot';
@@ -22,7 +22,7 @@ export interface ChatbotHeaderTitleProps {
22
22
  showOnDefault?: React.ReactNode | string;
23
23
  }
24
24
 
25
- export const ChatbotHeaderTitle: React.FunctionComponent<ChatbotHeaderTitleProps> = ({
25
+ export const ChatbotHeaderTitle: FunctionComponent<ChatbotHeaderTitleProps> = ({
26
26
  className,
27
27
  children,
28
28
  displayMode,
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import ChatbotModal from './ChatbotModal';
4
3
  import '@testing-library/jest-dom';
@@ -1,7 +1,7 @@
1
1
  // ============================================================================
2
2
  // Code Modal - Chatbot Modal with Code Editor
3
3
  // ============================================================================
4
- import React from 'react';
4
+ import type { FunctionComponent } from 'react';
5
5
 
6
6
  // Import PatternFly components
7
7
  import { Modal, ModalProps } from '@patternfly/react-core';
@@ -16,7 +16,7 @@ export interface ChatbotModalProps extends Omit<ModalProps, 'ref'> {
16
16
  isCompact?: boolean;
17
17
  }
18
18
 
19
- export const ChatbotModal: React.FunctionComponent<ChatbotModalProps> = ({
19
+ export const ChatbotModal: FunctionComponent<ChatbotModalProps> = ({
20
20
  children,
21
21
  displayMode = ChatbotDisplayMode.default,
22
22
  className,
@@ -1,13 +1,13 @@
1
1
  // ============================================================================
2
2
  // Chatbot Popover
3
3
  // ============================================================================
4
- import React from 'react';
4
+ import type { FunctionComponent } from 'react';
5
5
 
6
6
  // Import PatternFly components
7
7
  import { Popover, PopoverProps } from '@patternfly/react-core';
8
8
 
9
- export const ChatbotPopover: React.FunctionComponent<PopoverProps> = ({ children, className, ...props }) => (
10
- <Popover className={`pf-chatbot__popover ${className ?? ''}`} showClose={false} {...props}>
9
+ export const ChatbotPopover: FunctionComponent<PopoverProps> = ({ children, className, ...props }) => (
10
+ <Popover className={`pf-chatbot__popover ${className ?? ''}`} showClose={false} {...props}>
11
11
  {children}
12
12
  </Popover>
13
13
  );
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import '@testing-library/jest-dom';
4
3
  import userEvent from '@testing-library/user-event';
@@ -1,7 +1,9 @@
1
1
  // ============================================================================
2
2
  // Chatbot Toggle
3
3
  // ============================================================================
4
- import React from 'react';
4
+ import type { Ref, FunctionComponent } from 'react';
5
+
6
+ import { forwardRef } from 'react';
5
7
  import { Button, ButtonProps, Tooltip, TooltipProps, Icon } from '@patternfly/react-core';
6
8
  import AngleDownIcon from '@patternfly/react-icons/dist/esm/icons/angle-down-icon';
7
9
 
@@ -47,7 +49,7 @@ const ChatIcon = () => (
47
49
  </svg>
48
50
  );
49
51
 
50
- const ChatbotToggleBase: React.FunctionComponent<ChatbotToggleProps> = ({
52
+ const ChatbotToggleBase: FunctionComponent<ChatbotToggleProps> = ({
51
53
  tooltipLabel,
52
54
  isChatbotVisible,
53
55
  onToggleChatbot,
@@ -87,7 +89,7 @@ const ChatbotToggleBase: React.FunctionComponent<ChatbotToggleProps> = ({
87
89
  );
88
90
  };
89
91
 
90
- const ChatbotToggle = React.forwardRef((props: ChatbotToggleProps, ref: React.Ref<any>) => (
92
+ const ChatbotToggle = forwardRef((props: ChatbotToggleProps, ref: Ref<any>) => (
91
93
  <ChatbotToggleBase innerRef={ref} {...props} />
92
94
  ));
93
95
 
@@ -1,4 +1,3 @@
1
- import React from 'react';
2
1
  import { render, screen } from '@testing-library/react';
3
2
  import '@testing-library/jest-dom';
4
3
  import ChatbotWelcomePrompt from './ChatbotWelcomePrompt';
@@ -1,7 +1,7 @@
1
1
  // ============================================================================
2
2
  // Chatbot Layout - Chat - Welcome
3
3
  // ============================================================================
4
- import React from 'react';
4
+ import type { FunctionComponent } from 'react';
5
5
 
6
6
  import { Content, ContentVariants, Card, CardHeader, CardTitle, CardBody } from '@patternfly/react-core';
7
7
 
@@ -28,7 +28,7 @@ export interface WelcomePrompt {
28
28
  onClick?: () => void;
29
29
  }
30
30
 
31
- export const ChatbotWelcomePrompt: React.FunctionComponent<ChatbotWelcomePromptProps> = ({
31
+ export const ChatbotWelcomePrompt: FunctionComponent<ChatbotWelcomePromptProps> = ({
32
32
  title,
33
33
  description,
34
34
  prompts,
@@ -1,5 +1,4 @@
1
- import React from 'react';
2
- import { render, screen } from '@testing-library/react';
1
+ import { render, screen, within } from '@testing-library/react';
3
2
  import '@testing-library/jest-dom';
4
3
  import CodeModal from './CodeModal';
5
4
 
@@ -21,4 +20,32 @@ describe('ChatbotModal', () => {
21
20
  );
22
21
  expect(screen.getByRole('dialog')).toHaveClass('pf-m-compact');
23
22
  });
23
+
24
+ it('should render CodeModal with custom classNames', async () => {
25
+ render(
26
+ <CodeModal
27
+ isCompact
28
+ code="Hello world"
29
+ fileName="greetings.txt"
30
+ isModalOpen={true}
31
+ handleModalToggle={jest.fn()}
32
+ onPrimaryAction={jest.fn()}
33
+ onSecondaryAction={jest.fn()}
34
+ title="Preview attachment"
35
+ primaryActionBtn="Submit"
36
+ secondaryActionBtn="Cancel"
37
+ modalHeaderClassName="custom-header-class"
38
+ modalBodyClassName="custom-body-class"
39
+ modalFooterClassName="custom-footer-class"
40
+ ></CodeModal>
41
+ );
42
+
43
+ const modal = screen.getByRole('dialog');
44
+ const modalHeader = within(modal).getByRole('banner');
45
+ expect(modalHeader).toHaveClass('custom-header-class');
46
+ const modalBody = modal.querySelector('#code-modal-body');
47
+ expect(modalBody).toHaveClass('custom-body-class');
48
+ const modalfooter = within(modal).getByRole('contentinfo');
49
+ expect(modalfooter).toHaveClass('custom-footer-class');
50
+ });
24
51
  });