@patternfly/chatbot 6.3.0-prerelease.2 → 6.3.0-prerelease.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/AttachMenu/AttachMenu.d.ts +2 -2
- package/dist/cjs/AttachMenu/AttachMenu.js +2 -12
- package/dist/cjs/AttachmentEdit/AttachmentEdit.d.ts +14 -2
- package/dist/cjs/AttachmentEdit/AttachmentEdit.js +3 -6
- package/dist/cjs/AttachmentEdit/AttachmentEdit.test.d.ts +1 -1
- package/dist/cjs/AttachmentEdit/AttachmentEdit.test.js +33 -8
- package/dist/cjs/Chatbot/Chatbot.d.ts +3 -2
- package/dist/cjs/Chatbot/Chatbot.js +5 -10
- package/dist/cjs/Chatbot/Chatbot.test.js +13 -9
- package/dist/cjs/ChatbotAlert/ChatbotAlert.d.ts +2 -2
- package/dist/cjs/ChatbotAlert/ChatbotAlert.js +4 -8
- package/dist/cjs/ChatbotAlert/ChatbotAlert.test.js +10 -10
- package/dist/cjs/ChatbotContent/ChatbotContent.d.ts +3 -3
- package/dist/cjs/ChatbotContent/ChatbotContent.js +2 -8
- package/dist/cjs/ChatbotContent/ChatbotContent.test.js +5 -5
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.d.ts +2 -2
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.js +7 -11
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +31 -33
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.d.ts +4 -2
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +17 -34
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +58 -62
- package/dist/cjs/ChatbotConversationHistoryNav/EmptyState.d.ts +2 -2
- package/dist/cjs/ChatbotConversationHistoryNav/EmptyState.js +2 -9
- package/dist/cjs/ChatbotConversationHistoryNav/LoadingState.d.ts +2 -2
- package/dist/cjs/ChatbotConversationHistoryNav/LoadingState.js +2 -25
- package/dist/cjs/ChatbotFooter/ChatbotFooter.d.ts +4 -3
- package/dist/cjs/ChatbotFooter/ChatbotFooter.js +3 -16
- package/dist/cjs/ChatbotFooter/ChatbotFooter.test.d.ts +1 -1
- package/dist/cjs/ChatbotFooter/ChatbotFooter.test.js +10 -5
- package/dist/cjs/ChatbotFooter/ChatbotFooternote.test.js +28 -28
- package/dist/cjs/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
- package/dist/cjs/ChatbotFooter/ChatbotFootnote.js +10 -23
- package/dist/cjs/ChatbotHeader/ChatbotHeader.d.ts +3 -3
- package/dist/cjs/ChatbotHeader/ChatbotHeader.js +2 -7
- package/dist/cjs/ChatbotHeader/ChatbotHeader.test.js +5 -5
- package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
- package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.js +2 -5
- package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.test.js +5 -5
- package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +5 -4
- package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.js +19 -10
- package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.d.ts +1 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.js +10 -8
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.js +2 -5
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.test.js +5 -5
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.d.ts +5 -4
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.js +20 -8
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.d.ts +1 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.js +10 -8
- package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +7 -3
- package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
- package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.d.ts +1 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +22 -19
- package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +9 -3
- package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +11 -12
- package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.d.ts +1 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +20 -17
- package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
- package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.js +2 -5
- package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.test.js +23 -23
- package/dist/cjs/ChatbotModal/ChatbotModal.d.ts +5 -2
- package/dist/cjs/ChatbotModal/ChatbotModal.js +4 -10
- package/dist/cjs/ChatbotModal/ChatbotModal.test.d.ts +1 -0
- package/dist/cjs/ChatbotModal/ChatbotModal.test.js +16 -0
- package/dist/cjs/ChatbotPopover/ChatbotPopover.d.ts +2 -2
- package/dist/cjs/ChatbotPopover/ChatbotPopover.js +2 -8
- package/dist/cjs/ChatbotToggle/ChatbotToggle.d.ts +1 -2
- package/dist/cjs/ChatbotToggle/ChatbotToggle.js +8 -13
- package/dist/cjs/ChatbotToggle/ChatbotToggle.test.js +25 -25
- package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +3 -2
- package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +7 -21
- package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +18 -14
- package/dist/cjs/CodeModal/CodeModal.d.ts +10 -2
- package/dist/cjs/CodeModal/CodeModal.js +8 -20
- package/dist/cjs/CodeModal/CodeModal.test.d.ts +1 -0
- package/dist/cjs/CodeModal/CodeModal.test.js +34 -0
- package/dist/cjs/Compare/Compare.d.ts +2 -2
- package/dist/cjs/Compare/Compare.js +7 -16
- package/dist/cjs/Compare/Compare.test.js +7 -9
- package/dist/cjs/FileDetails/FileDetails.d.ts +2 -2
- package/dist/cjs/FileDetails/FileDetails.js +2 -15
- package/dist/cjs/FileDetails/FileDetails.test.js +10 -10
- package/dist/cjs/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
- package/dist/cjs/FileDetailsLabel/FileDetailsLabel.js +2 -5
- package/dist/cjs/FileDetailsLabel/FileDetailsLabel.test.js +21 -21
- package/dist/cjs/FileDropZone/FileDropZone.d.ts +9 -2
- package/dist/cjs/FileDropZone/FileDropZone.js +6 -9
- package/dist/cjs/FileDropZone/FileDropZone.test.js +31 -5
- package/dist/cjs/LoadingMessage/LoadingMessage.d.ts +2 -2
- package/dist/cjs/LoadingMessage/LoadingMessage.js +2 -10
- package/dist/cjs/LoadingMessage/LoadingMessage.test.js +6 -6
- package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.d.ts +20 -3
- package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.js +22 -16
- package/dist/cjs/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.d.ts +62 -0
- package/dist/cjs/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.js +136 -0
- package/dist/cjs/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
- package/dist/cjs/Message/ErrorMessage/ErrorMessage.js +5 -8
- package/dist/cjs/Message/ImageMessage/ImageMessage.d.ts +1 -2
- package/dist/cjs/Message/ImageMessage/ImageMessage.js +2 -8
- package/dist/cjs/Message/LinkMessage/LinkMessage.d.ts +1 -2
- package/dist/cjs/Message/LinkMessage/LinkMessage.js +6 -9
- package/dist/cjs/Message/ListMessage/ListItemMessage.d.ts +1 -2
- package/dist/cjs/Message/ListMessage/ListItemMessage.js +2 -8
- package/dist/cjs/Message/ListMessage/OrderedListMessage.d.ts +1 -2
- package/dist/cjs/Message/ListMessage/OrderedListMessage.js +2 -9
- package/dist/cjs/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
- package/dist/cjs/Message/ListMessage/UnorderedListMessage.js +2 -9
- package/dist/cjs/Message/Message.d.ts +26 -8
- package/dist/cjs/Message/Message.js +50 -72
- package/dist/cjs/Message/Message.test.js +123 -81
- package/dist/cjs/Message/MessageInput.d.ts +2 -2
- package/dist/cjs/Message/MessageInput.js +5 -14
- package/dist/cjs/Message/MessageLoading.d.ts +1 -2
- package/dist/cjs/Message/MessageLoading.js +3 -8
- package/dist/cjs/Message/Plugins/rehypeMoveImagesOutOfParagraphs.d.ts +2 -0
- package/dist/cjs/Message/Plugins/rehypeMoveImagesOutOfParagraphs.js +47 -0
- package/dist/cjs/Message/QuickResponse/QuickResponse.d.ts +4 -2
- package/dist/cjs/Message/QuickResponse/QuickResponse.js +8 -10
- package/dist/cjs/Message/QuickStarts/FallbackImg.d.ts +2 -2
- package/dist/cjs/Message/QuickStarts/FallbackImg.js +5 -27
- package/dist/cjs/Message/QuickStarts/QuickStartTile.d.ts +4 -2
- package/dist/cjs/Message/QuickStarts/QuickStartTile.js +8 -44
- package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
- package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.js +9 -38
- package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.test.js +16 -16
- package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
- package/dist/cjs/Message/QuickStarts/QuickStartTileHeader.js +2 -26
- package/dist/cjs/Message/QuickStarts/types.d.ts +4 -3
- package/dist/cjs/Message/TableMessage/TableMessage.d.ts +1 -2
- package/dist/cjs/Message/TableMessage/TableMessage.js +8 -10
- package/dist/cjs/Message/TableMessage/TbodyMessage.d.ts +2 -3
- package/dist/cjs/Message/TableMessage/TbodyMessage.js +7 -9
- package/dist/cjs/Message/TableMessage/TdMessage.d.ts +1 -2
- package/dist/cjs/Message/TableMessage/TdMessage.js +2 -8
- package/dist/cjs/Message/TableMessage/ThMessage.d.ts +1 -2
- package/dist/cjs/Message/TableMessage/ThMessage.js +2 -8
- package/dist/cjs/Message/TableMessage/TheadMessage.d.ts +1 -2
- package/dist/cjs/Message/TableMessage/TheadMessage.js +2 -8
- package/dist/cjs/Message/TableMessage/TrMessage.d.ts +2 -3
- package/dist/cjs/Message/TableMessage/TrMessage.js +8 -10
- package/dist/cjs/Message/TextMessage/TextMessage.d.ts +1 -2
- package/dist/cjs/Message/TextMessage/TextMessage.js +2 -9
- package/dist/cjs/Message/UserFeedback/CloseButton.d.ts +2 -2
- package/dist/cjs/Message/UserFeedback/CloseButton.js +2 -8
- package/dist/cjs/Message/UserFeedback/UserFeedback.d.ts +2 -2
- package/dist/cjs/Message/UserFeedback/UserFeedback.js +13 -24
- package/dist/cjs/Message/UserFeedback/UserFeedback.test.js +55 -51
- package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
- package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.js +21 -45
- package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.test.js +83 -89
- package/dist/cjs/MessageBar/AttachButton.d.ts +9 -2
- package/dist/cjs/MessageBar/AttachButton.js +9 -17
- package/dist/cjs/MessageBar/AttachButton.test.js +50 -22
- package/dist/cjs/MessageBar/MessageBar.d.ts +16 -3
- package/dist/cjs/MessageBar/MessageBar.js +36 -37
- package/dist/cjs/MessageBar/MessageBar.test.js +122 -108
- package/dist/cjs/MessageBar/MicrophoneButton.d.ts +3 -2
- package/dist/cjs/MessageBar/MicrophoneButton.js +8 -15
- package/dist/cjs/MessageBar/SendButton.d.ts +4 -2
- package/dist/cjs/MessageBar/SendButton.js +4 -12
- package/dist/cjs/MessageBar/SendButton.test.js +18 -14
- package/dist/cjs/MessageBar/StopButton.d.ts +4 -2
- package/dist/cjs/MessageBar/StopButton.js +4 -13
- package/dist/cjs/MessageBar/StopButton.test.js +18 -14
- package/dist/cjs/MessageBox/JumpButton.d.ts +2 -2
- package/dist/cjs/MessageBox/JumpButton.js +2 -10
- package/dist/cjs/MessageBox/JumpButton.test.js +10 -10
- package/dist/cjs/MessageBox/MessageBox.d.ts +21 -5
- package/dist/cjs/MessageBox/MessageBox.js +181 -44
- package/dist/cjs/MessageBox/MessageBox.test.js +219 -6
- package/dist/cjs/PreviewAttachment/PreviewAttachment.d.ts +14 -2
- package/dist/cjs/PreviewAttachment/PreviewAttachment.js +3 -6
- package/dist/cjs/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
- package/dist/cjs/PreviewAttachment/PreviewAttachment.test.js +34 -12
- package/dist/cjs/ResponseActions/ResponseActionButton.d.ts +5 -5
- package/dist/cjs/ResponseActions/ResponseActionButton.js +5 -8
- package/dist/cjs/ResponseActions/ResponseActionButton.test.js +19 -19
- package/dist/cjs/ResponseActions/ResponseActions.d.ts +7 -3
- package/dist/cjs/ResponseActions/ResponseActions.js +12 -16
- package/dist/cjs/ResponseActions/ResponseActions.test.js +60 -41
- package/dist/cjs/Settings/SettingsForm.d.ts +4 -2
- package/dist/cjs/Settings/SettingsForm.js +3 -9
- package/dist/cjs/Settings/SettingsForm.test.d.ts +1 -1
- package/dist/cjs/Settings/SettingsForm.test.js +18 -9
- package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
- package/dist/cjs/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -11
- package/dist/cjs/SourcesCard/SourcesCard.d.ts +2 -2
- package/dist/cjs/SourcesCard/SourcesCard.js +17 -43
- package/dist/cjs/SourcesCard/SourcesCard.test.js +60 -60
- package/dist/cjs/TermsOfUse/TermsOfUse.d.ts +5 -3
- package/dist/cjs/TermsOfUse/TermsOfUse.js +5 -17
- package/dist/cjs/TermsOfUse/TermsOfUse.test.js +31 -33
- package/dist/css/main.css +228 -15
- package/dist/css/main.css.map +1 -1
- package/dist/esm/AttachMenu/AttachMenu.d.ts +2 -2
- package/dist/esm/AttachMenu/AttachMenu.js +2 -9
- package/dist/esm/AttachmentEdit/AttachmentEdit.d.ts +14 -2
- package/dist/esm/AttachmentEdit/AttachmentEdit.js +3 -6
- package/dist/esm/AttachmentEdit/AttachmentEdit.test.d.ts +1 -1
- package/dist/esm/AttachmentEdit/AttachmentEdit.test.js +30 -5
- package/dist/esm/Chatbot/Chatbot.d.ts +3 -2
- package/dist/esm/Chatbot/Chatbot.js +5 -7
- package/dist/esm/Chatbot/Chatbot.test.js +9 -5
- package/dist/esm/ChatbotAlert/ChatbotAlert.d.ts +2 -2
- package/dist/esm/ChatbotAlert/ChatbotAlert.js +4 -5
- package/dist/esm/ChatbotAlert/ChatbotAlert.test.js +4 -4
- package/dist/esm/ChatbotContent/ChatbotContent.d.ts +3 -3
- package/dist/esm/ChatbotContent/ChatbotContent.js +2 -5
- package/dist/esm/ChatbotContent/ChatbotContent.test.js +3 -3
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.d.ts +2 -2
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.js +7 -11
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +8 -10
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.d.ts +4 -2
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.js +17 -34
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +29 -33
- package/dist/esm/ChatbotConversationHistoryNav/EmptyState.d.ts +2 -2
- package/dist/esm/ChatbotConversationHistoryNav/EmptyState.js +2 -6
- package/dist/esm/ChatbotConversationHistoryNav/LoadingState.d.ts +2 -2
- package/dist/esm/ChatbotConversationHistoryNav/LoadingState.js +2 -22
- package/dist/esm/ChatbotFooter/ChatbotFooter.d.ts +4 -3
- package/dist/esm/ChatbotFooter/ChatbotFooter.js +3 -13
- package/dist/esm/ChatbotFooter/ChatbotFooter.test.d.ts +1 -1
- package/dist/esm/ChatbotFooter/ChatbotFooter.test.js +8 -3
- package/dist/esm/ChatbotFooter/ChatbotFooternote.test.js +5 -5
- package/dist/esm/ChatbotFooter/ChatbotFootnote.d.ts +3 -3
- package/dist/esm/ChatbotFooter/ChatbotFootnote.js +10 -23
- package/dist/esm/ChatbotHeader/ChatbotHeader.d.ts +3 -3
- package/dist/esm/ChatbotHeader/ChatbotHeader.js +2 -4
- package/dist/esm/ChatbotHeader/ChatbotHeader.test.js +3 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderActions.d.ts +2 -2
- package/dist/esm/ChatbotHeader/ChatbotHeaderActions.js +2 -2
- package/dist/esm/ChatbotHeader/ChatbotHeaderActions.test.js +3 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.d.ts +5 -4
- package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.js +20 -8
- package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.d.ts +1 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.js +8 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderMain.d.ts +2 -2
- package/dist/esm/ChatbotHeader/ChatbotHeaderMain.js +2 -2
- package/dist/esm/ChatbotHeader/ChatbotHeaderMain.test.js +3 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.d.ts +5 -4
- package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.js +20 -8
- package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.d.ts +1 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.js +8 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.d.ts +7 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.js +8 -9
- package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.d.ts +1 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +13 -7
- package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.d.ts +9 -3
- package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.js +11 -9
- package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.d.ts +1 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +13 -7
- package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.d.ts +2 -2
- package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.js +2 -2
- package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.test.js +12 -12
- package/dist/esm/ChatbotModal/ChatbotModal.d.ts +5 -2
- package/dist/esm/ChatbotModal/ChatbotModal.js +4 -7
- package/dist/esm/ChatbotModal/ChatbotModal.test.d.ts +1 -0
- package/dist/esm/ChatbotModal/ChatbotModal.test.js +11 -0
- package/dist/esm/ChatbotPopover/ChatbotPopover.d.ts +2 -2
- package/dist/esm/ChatbotPopover/ChatbotPopover.js +2 -5
- package/dist/esm/ChatbotToggle/ChatbotToggle.d.ts +1 -2
- package/dist/esm/ChatbotToggle/ChatbotToggle.js +8 -13
- package/dist/esm/ChatbotToggle/ChatbotToggle.test.js +8 -8
- package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.d.ts +3 -2
- package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.js +7 -18
- package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +11 -7
- package/dist/esm/CodeModal/CodeModal.d.ts +10 -2
- package/dist/esm/CodeModal/CodeModal.js +8 -20
- package/dist/esm/CodeModal/CodeModal.test.d.ts +1 -0
- package/dist/esm/CodeModal/CodeModal.test.js +29 -0
- package/dist/esm/Compare/Compare.d.ts +2 -2
- package/dist/esm/Compare/Compare.js +7 -13
- package/dist/esm/Compare/Compare.test.js +4 -6
- package/dist/esm/FileDetails/FileDetails.d.ts +2 -2
- package/dist/esm/FileDetails/FileDetails.js +2 -15
- package/dist/esm/FileDetails/FileDetails.test.js +4 -4
- package/dist/esm/FileDetailsLabel/FileDetailsLabel.d.ts +2 -2
- package/dist/esm/FileDetailsLabel/FileDetailsLabel.js +2 -5
- package/dist/esm/FileDetailsLabel/FileDetailsLabel.test.js +9 -9
- package/dist/esm/FileDropZone/FileDropZone.d.ts +9 -2
- package/dist/esm/FileDropZone/FileDropZone.js +6 -6
- package/dist/esm/FileDropZone/FileDropZone.test.js +29 -3
- package/dist/esm/LoadingMessage/LoadingMessage.d.ts +2 -2
- package/dist/esm/LoadingMessage/LoadingMessage.js +2 -10
- package/dist/esm/LoadingMessage/LoadingMessage.test.js +3 -3
- package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.d.ts +20 -3
- package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.js +23 -17
- package/dist/esm/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.d.ts +62 -0
- package/dist/esm/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.js +130 -0
- package/dist/esm/Message/ErrorMessage/ErrorMessage.d.ts +1 -2
- package/dist/esm/Message/ErrorMessage/ErrorMessage.js +5 -5
- package/dist/esm/Message/ImageMessage/ImageMessage.d.ts +1 -2
- package/dist/esm/Message/ImageMessage/ImageMessage.js +2 -5
- package/dist/esm/Message/LinkMessage/LinkMessage.d.ts +1 -2
- package/dist/esm/Message/LinkMessage/LinkMessage.js +6 -6
- package/dist/esm/Message/ListMessage/ListItemMessage.d.ts +1 -2
- package/dist/esm/Message/ListMessage/ListItemMessage.js +2 -5
- package/dist/esm/Message/ListMessage/OrderedListMessage.d.ts +1 -2
- package/dist/esm/Message/ListMessage/OrderedListMessage.js +2 -6
- package/dist/esm/Message/ListMessage/UnorderedListMessage.d.ts +1 -2
- package/dist/esm/Message/ListMessage/UnorderedListMessage.js +2 -6
- package/dist/esm/Message/Message.d.ts +26 -8
- package/dist/esm/Message/Message.js +50 -72
- package/dist/esm/Message/Message.test.js +123 -81
- package/dist/esm/Message/MessageInput.d.ts +2 -2
- package/dist/esm/Message/MessageInput.js +5 -11
- package/dist/esm/Message/MessageLoading.d.ts +1 -2
- package/dist/esm/Message/MessageLoading.js +2 -4
- package/dist/esm/Message/Plugins/rehypeMoveImagesOutOfParagraphs.d.ts +2 -0
- package/dist/esm/Message/Plugins/rehypeMoveImagesOutOfParagraphs.js +43 -0
- package/dist/esm/Message/QuickResponse/QuickResponse.d.ts +4 -2
- package/dist/esm/Message/QuickResponse/QuickResponse.js +8 -7
- package/dist/esm/Message/QuickStarts/FallbackImg.d.ts +2 -2
- package/dist/esm/Message/QuickStarts/FallbackImg.js +5 -4
- package/dist/esm/Message/QuickStarts/QuickStartTile.d.ts +4 -2
- package/dist/esm/Message/QuickStarts/QuickStartTile.js +8 -21
- package/dist/esm/Message/QuickStarts/QuickStartTileDescription.d.ts +2 -2
- package/dist/esm/Message/QuickStarts/QuickStartTileDescription.js +9 -15
- package/dist/esm/Message/QuickStarts/QuickStartTileDescription.test.js +5 -5
- package/dist/esm/Message/QuickStarts/QuickStartTileHeader.d.ts +2 -2
- package/dist/esm/Message/QuickStarts/QuickStartTileHeader.js +2 -3
- package/dist/esm/Message/QuickStarts/types.d.ts +4 -3
- package/dist/esm/Message/TableMessage/TableMessage.d.ts +1 -2
- package/dist/esm/Message/TableMessage/TableMessage.js +8 -7
- package/dist/esm/Message/TableMessage/TbodyMessage.d.ts +2 -3
- package/dist/esm/Message/TableMessage/TbodyMessage.js +7 -6
- package/dist/esm/Message/TableMessage/TdMessage.d.ts +1 -2
- package/dist/esm/Message/TableMessage/TdMessage.js +2 -5
- package/dist/esm/Message/TableMessage/ThMessage.d.ts +1 -2
- package/dist/esm/Message/TableMessage/ThMessage.js +2 -5
- package/dist/esm/Message/TableMessage/TheadMessage.d.ts +1 -2
- package/dist/esm/Message/TableMessage/TheadMessage.js +2 -5
- package/dist/esm/Message/TableMessage/TrMessage.d.ts +2 -3
- package/dist/esm/Message/TableMessage/TrMessage.js +8 -7
- package/dist/esm/Message/TextMessage/TextMessage.d.ts +1 -2
- package/dist/esm/Message/TextMessage/TextMessage.js +2 -6
- package/dist/esm/Message/UserFeedback/CloseButton.d.ts +2 -2
- package/dist/esm/Message/UserFeedback/CloseButton.js +2 -5
- package/dist/esm/Message/UserFeedback/UserFeedback.d.ts +2 -2
- package/dist/esm/Message/UserFeedback/UserFeedback.js +13 -24
- package/dist/esm/Message/UserFeedback/UserFeedback.test.js +24 -20
- package/dist/esm/Message/UserFeedback/UserFeedbackComplete.d.ts +2 -2
- package/dist/esm/Message/UserFeedback/UserFeedbackComplete.js +21 -45
- package/dist/esm/Message/UserFeedback/UserFeedbackComplete.test.js +29 -35
- package/dist/esm/MessageBar/AttachButton.d.ts +9 -2
- package/dist/esm/MessageBar/AttachButton.js +9 -14
- package/dist/esm/MessageBar/AttachButton.test.js +44 -16
- package/dist/esm/MessageBar/MessageBar.d.ts +16 -3
- package/dist/esm/MessageBar/MessageBar.js +34 -35
- package/dist/esm/MessageBar/MessageBar.test.js +87 -73
- package/dist/esm/MessageBar/MicrophoneButton.d.ts +3 -2
- package/dist/esm/MessageBar/MicrophoneButton.js +8 -12
- package/dist/esm/MessageBar/SendButton.d.ts +4 -2
- package/dist/esm/MessageBar/SendButton.js +4 -9
- package/dist/esm/MessageBar/SendButton.test.js +13 -9
- package/dist/esm/MessageBar/StopButton.d.ts +4 -2
- package/dist/esm/MessageBar/StopButton.js +4 -10
- package/dist/esm/MessageBar/StopButton.test.js +13 -9
- package/dist/esm/MessageBox/JumpButton.d.ts +2 -2
- package/dist/esm/MessageBox/JumpButton.js +2 -7
- package/dist/esm/MessageBox/JumpButton.test.js +9 -9
- package/dist/esm/MessageBox/MessageBox.d.ts +21 -5
- package/dist/esm/MessageBox/MessageBox.js +181 -44
- package/dist/esm/MessageBox/MessageBox.test.js +220 -7
- package/dist/esm/PreviewAttachment/PreviewAttachment.d.ts +14 -2
- package/dist/esm/PreviewAttachment/PreviewAttachment.js +3 -6
- package/dist/esm/PreviewAttachment/PreviewAttachment.test.d.ts +1 -1
- package/dist/esm/PreviewAttachment/PreviewAttachment.test.js +30 -5
- package/dist/esm/ResponseActions/ResponseActionButton.d.ts +5 -5
- package/dist/esm/ResponseActions/ResponseActionButton.js +5 -5
- package/dist/esm/ResponseActions/ResponseActionButton.test.js +7 -7
- package/dist/esm/ResponseActions/ResponseActions.d.ts +7 -3
- package/dist/esm/ResponseActions/ResponseActions.js +13 -17
- package/dist/esm/ResponseActions/ResponseActions.test.js +35 -16
- package/dist/esm/Settings/SettingsForm.d.ts +4 -2
- package/dist/esm/Settings/SettingsForm.js +3 -6
- package/dist/esm/Settings/SettingsForm.test.d.ts +1 -1
- package/dist/esm/Settings/SettingsForm.test.js +16 -4
- package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.d.ts +2 -2
- package/dist/esm/SourceDetailsMenuItem/SourceDetailsMenuItem.js +2 -8
- package/dist/esm/SourcesCard/SourcesCard.d.ts +2 -2
- package/dist/esm/SourcesCard/SourcesCard.js +17 -40
- package/dist/esm/SourcesCard/SourcesCard.test.js +19 -19
- package/dist/esm/TermsOfUse/TermsOfUse.d.ts +5 -3
- package/dist/esm/TermsOfUse/TermsOfUse.js +5 -17
- package/dist/esm/TermsOfUse/TermsOfUse.test.js +10 -12
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +5 -6
- package/patternfly-docs/content/extensions/chatbot/design-guidelines.md +10 -0
- package/patternfly-docs/content/extensions/chatbot/examples/Customizing Messages/Customizing Messages.md +51 -0
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachMenu.tsx +9 -9
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentEdit.tsx +14 -5
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/AttachmentError.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/BotMessage.tsx +19 -20
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetails.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDetailsLabel.tsx +9 -9
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/FileDropZone.tsx +4 -4
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithAttachment.tsx +7 -7
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithCustomResponseActions.tsx +2 -12
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedback.tsx +37 -4
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithFeedbackTimeout.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickResponses.tsx +26 -2
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickStart.tsx +13 -2
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithResponseActions.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithSources.tsx +24 -3
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md +1 -0
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/PreviewAttachment.tsx +14 -5
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessage.tsx +20 -14
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessageWithExtraContent.tsx +4 -4
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotContainer.tsx +59 -36
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFooter.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotFootnote.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderBasic.tsx +10 -13
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawer.tsx +18 -9
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerNavigation.tsx +5 -5
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerResizable.tsx +5 -5
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithActions.tsx +14 -5
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderDrawerWithSelection.tsx +17 -8
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotHeaderTitle.tsx +59 -34
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBar.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarAttach.tsx +9 -9
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarDisabled.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarLanguage.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotMessageBarStop.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotModal.tsx +74 -37
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotToggleBasic.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomeInteraction.tsx +8 -8
- package/patternfly-docs/content/extensions/chatbot/examples/UI/ChatbotWelcomePrompt.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/UI/CompactSettings.tsx +282 -0
- package/patternfly-docs/content/extensions/chatbot/examples/UI/CustomClosedIcon.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/UI/Settings.tsx +16 -23
- package/patternfly-docs/content/extensions/chatbot/examples/UI/SkipToContent.tsx +5 -5
- package/patternfly-docs/content/extensions/chatbot/examples/UI/SquareChatbotToggle.tsx +3 -3
- package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUse.tsx +91 -48
- package/patternfly-docs/content/extensions/chatbot/examples/UI/TermsOfUseCompact.tsx +179 -0
- package/patternfly-docs/content/extensions/chatbot/examples/UI/UI.md +17 -0
- package/patternfly-docs/content/extensions/chatbot/examples/demos/AttachmentDemos.md +37 -0
- package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.md +9 -1
- package/patternfly-docs/content/extensions/chatbot/examples/demos/Chatbot.tsx +19 -25
- package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachment.tsx +23 -14
- package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotAttachmentMenu.tsx +14 -14
- package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotCompact.tsx +475 -0
- package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotInDrawer.tsx +17 -22
- package/patternfly-docs/content/extensions/chatbot/examples/demos/ChatbotScrolling.tsx +536 -0
- package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedChatbot.tsx +17 -22
- package/patternfly-docs/content/extensions/chatbot/examples/demos/EmbeddedComparisonChatbot.tsx +13 -13
- package/patternfly-docs/content/extensions/chatbot/examples/demos/Feedback.tsx +7 -7
- package/patternfly-docs/content/extensions/chatbot/img/quick-response-confirmation.svg +67 -0
- package/src/AttachMenu/AttachMenu.tsx +2 -2
- package/src/AttachmentEdit/AttachmentEdit.test.tsx +46 -2
- package/src/AttachmentEdit/AttachmentEdit.tsx +29 -7
- package/src/Chatbot/Chatbot.scss +7 -0
- package/src/Chatbot/Chatbot.test.tsx +9 -1
- package/src/Chatbot/Chatbot.tsx +9 -4
- package/src/ChatbotAlert/ChatbotAlert.test.tsx +0 -1
- package/src/ChatbotAlert/ChatbotAlert.tsx +2 -2
- package/src/ChatbotContent/ChatbotContent.test.tsx +0 -1
- package/src/ChatbotContent/ChatbotContent.tsx +3 -3
- package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.tsx +0 -1
- package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.tsx +6 -4
- package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.scss +38 -3
- package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.tsx +21 -3
- package/src/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.tsx +17 -8
- package/src/ChatbotConversationHistoryNav/EmptyState.tsx +2 -2
- package/src/ChatbotConversationHistoryNav/LoadingState.tsx +2 -2
- package/src/ChatbotFooter/ChatbotFooter.scss +5 -0
- package/src/ChatbotFooter/ChatbotFooter.test.tsx +10 -1
- package/src/ChatbotFooter/ChatbotFooter.tsx +6 -4
- package/src/ChatbotFooter/ChatbotFooternote.test.tsx +0 -1
- package/src/ChatbotFooter/ChatbotFootnote.tsx +6 -4
- package/src/ChatbotHeader/ChatbotHeader.scss +25 -0
- package/src/ChatbotHeader/ChatbotHeader.test.tsx +0 -1
- package/src/ChatbotHeader/ChatbotHeader.tsx +4 -7
- package/src/ChatbotHeader/ChatbotHeaderActions.test.tsx +0 -1
- package/src/ChatbotHeader/ChatbotHeaderActions.tsx +2 -2
- package/src/ChatbotHeader/ChatbotHeaderCloseButton.test.tsx +6 -1
- package/src/ChatbotHeader/ChatbotHeaderCloseButton.tsx +17 -10
- package/src/ChatbotHeader/ChatbotHeaderMain.test.tsx +0 -1
- package/src/ChatbotHeader/ChatbotHeaderMain.tsx +5 -3
- package/src/ChatbotHeader/ChatbotHeaderMenu.test.tsx +8 -1
- package/src/ChatbotHeader/ChatbotHeaderMenu.tsx +17 -12
- package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.tsx +15 -1
- package/src/ChatbotHeader/ChatbotHeaderOptionsDropdown.tsx +17 -7
- package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.tsx +19 -1
- package/src/ChatbotHeader/ChatbotHeaderSelectorDropdown.tsx +30 -6
- package/src/ChatbotHeader/ChatbotHeaderTitle.test.tsx +0 -1
- package/src/ChatbotHeader/ChatbotHeaderTitle.tsx +2 -2
- package/src/ChatbotModal/ChatbotModal.scss +15 -4
- package/src/ChatbotModal/ChatbotModal.test.tsx +58 -0
- package/src/ChatbotModal/ChatbotModal.tsx +7 -3
- package/src/ChatbotPopover/ChatbotPopover.scss +9 -5
- package/src/ChatbotPopover/ChatbotPopover.tsx +2 -2
- package/src/ChatbotToggle/ChatbotToggle.test.tsx +0 -1
- package/src/ChatbotToggle/ChatbotToggle.tsx +5 -3
- package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.scss +9 -1
- package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.tsx +13 -1
- package/src/ChatbotWelcomePrompt/ChatbotWelcomePrompt.tsx +15 -4
- package/src/ChatbotWelcomePrompt/__snapshots__/ChatbotWelcomePrompt.test.tsx.snap +1 -1
- package/src/CodeModal/CodeModal.scss +11 -3
- package/src/CodeModal/CodeModal.test.tsx +51 -0
- package/src/CodeModal/CodeModal.tsx +24 -10
- package/src/Compare/Compare.test.tsx +0 -1
- package/src/Compare/Compare.tsx +7 -6
- package/src/FileDetails/FileDetails.test.tsx +0 -1
- package/src/FileDetails/FileDetails.tsx +2 -2
- package/src/FileDetails/__snapshots__/FileDetails.test.tsx.snap +1 -1
- package/src/FileDetailsLabel/FileDetailsLabel.test.tsx +0 -1
- package/src/FileDetailsLabel/FileDetailsLabel.tsx +1 -1
- package/src/FileDetailsLabel/__snapshots__/FileDetailsLabel.test.tsx.snap +1 -1
- package/src/FileDropZone/FileDropZone.test.tsx +29 -1
- package/src/FileDropZone/FileDropZone.tsx +13 -3
- package/src/LoadingMessage/LoadingMessage.test.tsx +0 -1
- package/src/LoadingMessage/LoadingMessage.tsx +2 -2
- package/src/Message/CodeBlockMessage/CodeBlockMessage.scss +7 -0
- package/src/Message/CodeBlockMessage/CodeBlockMessage.tsx +105 -18
- package/src/Message/CodeBlockMessage/ExpandableSectionForSyntaxHighlighter.tsx +220 -0
- package/src/Message/ErrorMessage/ErrorMessage.tsx +0 -1
- package/src/Message/ImageMessage/ImageMessage.tsx +1 -2
- package/src/Message/LinkMessage/LinkMessage.tsx +0 -1
- package/src/Message/ListMessage/ListItemMessage.tsx +0 -1
- package/src/Message/ListMessage/OrderedListMessage.tsx +0 -1
- package/src/Message/ListMessage/UnorderedListMessage.tsx +0 -1
- package/src/Message/Message.scss +27 -0
- package/src/Message/Message.test.tsx +70 -6
- package/src/Message/Message.tsx +41 -17
- package/src/Message/MessageInput.tsx +5 -5
- package/src/Message/MessageLoading.tsx +0 -2
- package/src/Message/Plugins/rehypeMoveImagesOutOfParagraphs.ts +53 -0
- package/src/Message/QuickResponse/QuickResponse.tsx +9 -4
- package/src/Message/QuickStarts/FallbackImg.tsx +4 -3
- package/src/Message/QuickStarts/QuickStartTile.tsx +8 -4
- package/src/Message/QuickStarts/QuickStartTileDescription.test.tsx +0 -1
- package/src/Message/QuickStarts/QuickStartTileDescription.tsx +4 -3
- package/src/Message/QuickStarts/QuickStartTileHeader.tsx +2 -2
- package/src/Message/QuickStarts/types.ts +4 -3
- package/src/Message/TableMessage/TableMessage.tsx +4 -4
- package/src/Message/TableMessage/TbodyMessage.tsx +3 -3
- package/src/Message/TableMessage/TdMessage.tsx +1 -2
- package/src/Message/TableMessage/ThMessage.tsx +1 -2
- package/src/Message/TableMessage/TheadMessage.tsx +3 -2
- package/src/Message/TableMessage/TrMessage.tsx +4 -4
- package/src/Message/TextMessage/TextMessage.scss +25 -0
- package/src/Message/TextMessage/TextMessage.tsx +1 -2
- package/src/Message/UserFeedback/CloseButton.tsx +2 -2
- package/src/Message/UserFeedback/UserFeedback.scss +24 -3
- package/src/Message/UserFeedback/UserFeedback.test.tsx +13 -1
- package/src/Message/UserFeedback/UserFeedback.tsx +12 -8
- package/src/Message/UserFeedback/UserFeedbackComplete.test.tsx +4 -1
- package/src/Message/UserFeedback/UserFeedbackComplete.tsx +26 -16
- package/src/MessageBar/AttachButton.scss +10 -0
- package/src/MessageBar/AttachButton.test.tsx +56 -8
- package/src/MessageBar/AttachButton.tsx +21 -8
- package/src/MessageBar/MessageBar.scss +17 -0
- package/src/MessageBar/MessageBar.test.tsx +81 -30
- package/src/MessageBar/MessageBar.tsx +60 -25
- package/src/MessageBar/MicrophoneButton.scss +10 -0
- package/src/MessageBar/MicrophoneButton.tsx +15 -9
- package/src/MessageBar/SendButton.scss +10 -0
- package/src/MessageBar/SendButton.test.tsx +10 -7
- package/src/MessageBar/SendButton.tsx +9 -5
- package/src/MessageBar/StopButton.scss +10 -0
- package/src/MessageBar/StopButton.test.tsx +10 -7
- package/src/MessageBar/StopButton.tsx +9 -5
- package/src/MessageBox/JumpButton.test.tsx +4 -5
- package/src/MessageBox/JumpButton.tsx +3 -3
- package/src/MessageBox/MessageBox.scss +6 -0
- package/src/MessageBox/MessageBox.test.tsx +295 -5
- package/src/MessageBox/MessageBox.tsx +301 -82
- package/src/PreviewAttachment/PreviewAttachment.test.tsx +44 -2
- package/src/PreviewAttachment/PreviewAttachment.tsx +29 -7
- package/src/ResponseActions/ResponseActionButton.test.tsx +0 -1
- package/src/ResponseActions/ResponseActionButton.tsx +6 -5
- package/src/ResponseActions/ResponseActions.test.tsx +23 -3
- package/src/ResponseActions/ResponseActions.tsx +40 -10
- package/src/Settings/Settings.scss +11 -0
- package/src/Settings/SettingsForm.test.tsx +17 -1
- package/src/Settings/SettingsForm.tsx +8 -3
- package/src/SourceDetailsMenuItem/SourceDetailsMenuItem.tsx +2 -2
- package/src/SourcesCard/SourcesCard.scss +8 -0
- package/src/SourcesCard/SourcesCard.test.tsx +0 -1
- package/src/SourcesCard/SourcesCard.tsx +9 -8
- package/src/TermsOfUse/TermsOfUse.scss +20 -0
- package/src/TermsOfUse/TermsOfUse.test.tsx +0 -1
- package/src/TermsOfUse/TermsOfUse.tsx +15 -9
- package/tsconfig.cjs.json +0 -1
- 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
|
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 = ``;
|
144
|
+
const INLINE_IMAGE = `inline text `;
|
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.
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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)(
|
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',
|
@@ -287,9 +287,21 @@ describe('Message', () => {
|
|
287
287
|
yield user_event_1.default.click(quickResponse);
|
288
288
|
expect(spy).toHaveBeenCalledTimes(1);
|
289
289
|
}));
|
290
|
+
it('should be able to handle isCompact', () => __awaiter(void 0, void 0, void 0, function* () {
|
291
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
|
292
|
+
{
|
293
|
+
id: '1',
|
294
|
+
content: 'Yes',
|
295
|
+
onClick: jest.fn(),
|
296
|
+
className: 'test'
|
297
|
+
}
|
298
|
+
], isCompact: true }));
|
299
|
+
const parent = react_2.screen.getByRole('button', { name: /Yes/i }).parentNode;
|
300
|
+
expect(parent).toHaveClass('pf-m-compact');
|
301
|
+
}));
|
290
302
|
it('should be able to show more than 1 quick response', () => __awaiter(void 0, void 0, void 0, function* () {
|
291
303
|
const spy = jest.fn();
|
292
|
-
(0, react_2.render)(
|
304
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
|
293
305
|
{
|
294
306
|
id: '1',
|
295
307
|
content: 'Yes',
|
@@ -306,7 +318,7 @@ describe('Message', () => {
|
|
306
318
|
}));
|
307
319
|
it('should be able to spread quickResponseContainerProps', () => __awaiter(void 0, void 0, void 0, function* () {
|
308
320
|
const spy = jest.fn();
|
309
|
-
(0, react_2.render)(
|
321
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", quickResponses: [
|
310
322
|
{
|
311
323
|
id: '1',
|
312
324
|
content: 'Yes',
|
@@ -326,7 +338,7 @@ describe('Message', () => {
|
|
326
338
|
expect(react_2.screen.getByRole('button', { name: /1 more/i }));
|
327
339
|
}));
|
328
340
|
it('should be able to show actions', () => __awaiter(void 0, void 0, void 0, function* () {
|
329
|
-
(0, react_2.render)(
|
341
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", actions: {
|
330
342
|
// eslint-disable-next-line no-console
|
331
343
|
positive: { onClick: () => console.log('Good response') },
|
332
344
|
// eslint-disable-next-line no-console
|
@@ -336,6 +348,8 @@ describe('Message', () => {
|
|
336
348
|
// eslint-disable-next-line no-console
|
337
349
|
share: { onClick: () => console.log('Share') },
|
338
350
|
// eslint-disable-next-line no-console
|
351
|
+
download: { onClick: () => console.log('Download') },
|
352
|
+
// eslint-disable-next-line no-console
|
339
353
|
listen: { onClick: () => console.log('Listen') }
|
340
354
|
} }));
|
341
355
|
ALL_ACTIONS.forEach(({ label }) => {
|
@@ -343,7 +357,7 @@ describe('Message', () => {
|
|
343
357
|
});
|
344
358
|
}));
|
345
359
|
it('should not show actions if loading', () => __awaiter(void 0, void 0, void 0, function* () {
|
346
|
-
(0, react_2.render)(
|
360
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "bot", name: "Bot", content: "Hi", isLoading: true, actions: {
|
347
361
|
// eslint-disable-next-line no-console
|
348
362
|
positive: { onClick: () => console.log('Good response') },
|
349
363
|
// eslint-disable-next-line no-console
|
@@ -353,6 +367,8 @@ describe('Message', () => {
|
|
353
367
|
// eslint-disable-next-line no-console
|
354
368
|
share: { onClick: () => console.log('Share') },
|
355
369
|
// eslint-disable-next-line no-console
|
370
|
+
download: { onClick: () => console.log('Download') },
|
371
|
+
// eslint-disable-next-line no-console
|
356
372
|
listen: { onClick: () => console.log('Listen') }
|
357
373
|
} }));
|
358
374
|
expect(react_2.screen.getByText('Loading message')).toBeTruthy();
|
@@ -361,30 +377,30 @@ describe('Message', () => {
|
|
361
377
|
});
|
362
378
|
}));
|
363
379
|
it('should render unordered lists correctly', () => {
|
364
|
-
(0, react_2.render)(
|
380
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: UNORDERED_LIST }));
|
365
381
|
expect(react_2.screen.getByText('Here is an unordered list:')).toBeTruthy();
|
366
382
|
checkListItemsRendered();
|
367
383
|
});
|
368
384
|
it('should render ordered lists correctly', () => {
|
369
|
-
(0, react_2.render)(
|
385
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST }));
|
370
386
|
expect(react_2.screen.getByText('Here is an ordered list:')).toBeTruthy();
|
371
387
|
checkListItemsRendered();
|
372
388
|
});
|
373
389
|
it('should render ordered lists correctly if there is interstitial content', () => {
|
374
|
-
(0, react_2.render)(
|
390
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ORDERED_LIST_WITH_CODE }));
|
375
391
|
checkListItemsRendered();
|
376
392
|
const list = react_2.screen.getAllByRole('list')[1];
|
377
393
|
expect(list).toHaveAttribute('start', '3');
|
378
394
|
});
|
379
395
|
it('should render inline code', () => {
|
380
|
-
(0, react_2.render)(
|
396
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: INLINE_CODE }));
|
381
397
|
expect(react_2.screen.getByText(/() => void/i)).toBeTruthy();
|
382
398
|
expect(react_2.screen.queryByRole('button', { name: 'Copy code button' })).toBeFalsy();
|
383
399
|
});
|
384
400
|
it('should render code correctly', () => {
|
385
|
-
(0, react_2.render)(
|
401
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CODE_MESSAGE }));
|
386
402
|
expect(react_2.screen.getByText('Here is some YAML code:')).toBeTruthy();
|
387
|
-
expect(react_2.screen.getByRole('button', { name: 'Copy code
|
403
|
+
expect(react_2.screen.getByRole('button', { name: 'Copy code' })).toBeTruthy();
|
388
404
|
expect(react_2.screen.getByText(/yaml/)).toBeTruthy();
|
389
405
|
expect(react_2.screen.getByText(/apiVersion:/i)).toBeTruthy();
|
390
406
|
expect(react_2.screen.getByText(/helm.openshift.io\/v1beta1/i)).toBeTruthy();
|
@@ -396,44 +412,68 @@ describe('Message', () => {
|
|
396
412
|
expect(react_2.screen.getByText(/url:/i)).toBeTruthy();
|
397
413
|
expect(react_2.screen.getByText(/https:\/\/raw.githubusercontent.com\/Azure-Samples\/helm-charts\/master\/docs/i)).toBeTruthy();
|
398
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
|
+
}));
|
399
439
|
it('can click copy code button', () => __awaiter(void 0, void 0, void 0, function* () {
|
400
440
|
// need explicit setup since RTL stubs clipboard if you do this
|
401
441
|
const user = user_event_1.default.setup();
|
402
|
-
(0, react_2.render)(
|
403
|
-
expect(react_2.screen.getByRole('button', { name: 'Copy code
|
404
|
-
yield user.click(react_2.screen.getByRole('button', { name: 'Copy code
|
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' }));
|
405
445
|
const clipboardText = yield navigator.clipboard.readText();
|
406
446
|
expect(clipboardText.trim()).toEqual(CODE.trim());
|
407
447
|
}));
|
408
448
|
it('should handle codeBlockProps correctly by spreading it onto the CodeMessage', () => {
|
409
|
-
(0, react_2.render)(
|
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' } }));
|
410
450
|
expect(react_2.screen.getByRole('button', { name: 'test' })).toBeTruthy();
|
411
451
|
});
|
412
452
|
it('should handle hasRoundAvatar correctly when it is true', () => {
|
413
|
-
(0, react_2.render)(
|
453
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", hasRoundAvatar: true }));
|
414
454
|
expect(react_2.screen.getByRole('img')).toBeTruthy();
|
415
455
|
expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar');
|
416
456
|
expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar--round');
|
417
457
|
});
|
418
458
|
it('should handle hasRoundAvatar correctly when it is false', () => {
|
419
|
-
(0, react_2.render)(
|
459
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", hasRoundAvatar: false }));
|
420
460
|
expect(react_2.screen.getByRole('img')).toBeTruthy();
|
421
461
|
expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar');
|
422
462
|
expect(react_2.screen.getByRole('img')).not.toHaveClass('pf-chatbot__message-avatar--round');
|
423
463
|
});
|
424
464
|
it('should handle avatarProps correctly by spreading it onto the Message Avatar', () => {
|
425
|
-
(0, react_2.render)(
|
465
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", avatarProps: { className: 'test' } }));
|
426
466
|
expect(react_2.screen.getByRole('img')).toBeTruthy();
|
427
467
|
expect(react_2.screen.getByRole('img')).toHaveClass('test');
|
428
468
|
});
|
429
469
|
it('should handle avatarProps and hasRoundAvatar correctly', () => {
|
430
|
-
(0, react_2.render)(
|
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 }));
|
431
471
|
expect(react_2.screen.getByRole('img')).toBeTruthy();
|
432
472
|
expect(react_2.screen.getByRole('img')).toHaveClass('test');
|
433
473
|
expect(react_2.screen.getByRole('img')).toHaveClass('pf-chatbot__message-avatar');
|
434
474
|
});
|
435
475
|
it('should handle QuickStart tile correctly', () => {
|
436
|
-
(0, react_2.render)(
|
476
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
|
437
477
|
quickStart: monitor_sampleapp_quickstart_1.monitorSampleAppQuickStart,
|
438
478
|
onSelectQuickStart: (id) => alert(id)
|
439
479
|
} }));
|
@@ -444,7 +484,7 @@ describe('Message', () => {
|
|
444
484
|
});
|
445
485
|
it('should handle click on QuickStart tile correctly', () => __awaiter(void 0, void 0, void 0, function* () {
|
446
486
|
const spy = jest.fn();
|
447
|
-
(0, react_2.render)(
|
487
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
|
448
488
|
quickStart: monitor_sampleapp_quickstart_1.monitorSampleAppQuickStart,
|
449
489
|
onSelectQuickStart: (id) => spy(id)
|
450
490
|
} }));
|
@@ -454,20 +494,20 @@ describe('Message', () => {
|
|
454
494
|
}));
|
455
495
|
it('should handle QuickStart tile with image correctly', () => __awaiter(void 0, void 0, void 0, function* () {
|
456
496
|
const spy = jest.fn();
|
457
|
-
(0, react_2.render)(
|
497
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Hi", quickStarts: {
|
458
498
|
quickStart: monitor_sampleapp_quickstart_with_image_1.monitorSampleAppQuickStartWithImage,
|
459
499
|
onSelectQuickStart: (id) => spy(id)
|
460
500
|
} }));
|
461
501
|
expect(react_2.screen.getAllByRole('img')[1]).toHaveAttribute('src', 'test.png');
|
462
502
|
}));
|
463
503
|
it('should handle block quote correctly', () => {
|
464
|
-
(0, react_2.render)(
|
504
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: BLOCK_QUOTES }));
|
465
505
|
expect(react_2.screen.getByText(/Blockquotes can also be nested.../)).toBeTruthy();
|
466
506
|
expect(react_2.screen.getByText('...by using additional greater-than signs (>) right next to each other...')).toBeTruthy();
|
467
507
|
expect(react_2.screen.getByText(/...or with spaces between each sign./)).toBeTruthy();
|
468
508
|
});
|
469
509
|
it('should handle heading correctly', () => {
|
470
|
-
(0, react_2.render)(
|
510
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: HEADING }));
|
471
511
|
expect(react_2.screen.getByRole('heading', { name: /h1 Heading/i })).toBeTruthy();
|
472
512
|
expect(react_2.screen.getByRole('heading', { name: /h2 Heading/i })).toBeTruthy();
|
473
513
|
expect(react_2.screen.getByRole('heading', { name: /h3 Heading/i })).toBeTruthy();
|
@@ -476,7 +516,7 @@ describe('Message', () => {
|
|
476
516
|
expect(react_2.screen.getByRole('heading', { name: /h6 Heading/i })).toBeTruthy();
|
477
517
|
});
|
478
518
|
it('should render table correctly', () => {
|
479
|
-
(0, react_2.render)(
|
519
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE }));
|
480
520
|
expect(react_2.screen.getByRole('row', { name: /Column 1 Column 2/i })).toBeTruthy();
|
481
521
|
expect(react_2.screen.getByRole('row', { name: /Cell 1 Cell 2/i })).toBeTruthy();
|
482
522
|
expect(react_2.screen.getByRole('row', { name: /Cell 3 Cell 4/i })).toBeTruthy();
|
@@ -488,7 +528,7 @@ describe('Message', () => {
|
|
488
528
|
expect(react_2.screen.getByRole('cell', { name: /Cell 4/i })).toBeTruthy();
|
489
529
|
});
|
490
530
|
it('should render table data labels correctly for mobile breakpoint', () => {
|
491
|
-
(0, react_2.render)(
|
531
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: TABLE }));
|
492
532
|
expect(react_2.screen.getByRole('row', { name: /Cell 1 Cell 2/i })).toHaveAttribute('extraHeaders', 'Column 1,Column 2');
|
493
533
|
expect(react_2.screen.getByRole('row', { name: /Cell 3 Cell 4/i })).toHaveAttribute('extraHeaders', 'Column 1,Column 2');
|
494
534
|
expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).toHaveAttribute('data-label', 'Column 1');
|
@@ -497,70 +537,70 @@ describe('Message', () => {
|
|
497
537
|
expect(react_2.screen.getByRole('cell', { name: /Cell 4/i })).toHaveAttribute('data-label', 'Column 2');
|
498
538
|
});
|
499
539
|
it('should render table data labels correctly for mobile breakpoint for one column table', () => {
|
500
|
-
(0, react_2.render)(
|
540
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ONE_COLUMN_TABLE }));
|
501
541
|
expect(react_2.screen.getByRole('row', { name: /Cell 1/i })).toHaveAttribute('extraHeaders', 'Column 1');
|
502
542
|
expect(react_2.screen.getByRole('row', { name: /Cell 2/i })).toHaveAttribute('extraHeaders', 'Column 1');
|
503
543
|
expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).toHaveAttribute('data-label', 'Column 1');
|
504
544
|
expect(react_2.screen.getByRole('cell', { name: /Cell 2/i })).toHaveAttribute('data-label', 'Column 1');
|
505
545
|
});
|
506
546
|
it('should render table data labels correctly for mobile breakpoint for one cell table', () => {
|
507
|
-
(0, react_2.render)(
|
547
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: ONE_CELL_TABLE }));
|
508
548
|
expect(react_2.screen.getByRole('row', { name: /Cell 1/i })).toHaveAttribute('extraHeaders', 'Column 1');
|
509
549
|
expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).toHaveAttribute('data-label', 'Column 1');
|
510
550
|
});
|
511
551
|
it('should render table data labels correctly for mobile breakpoint for headerless', () => {
|
512
|
-
(0, react_2.render)(
|
552
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: HEADERLESS_TABLE }));
|
513
553
|
expect(react_2.screen.getByRole('row', { name: /Cell 1/i })).toHaveAttribute('extraHeaders', '');
|
514
554
|
expect(react_2.screen.getByRole('cell', { name: /Cell 1/i })).not.toHaveAttribute('data-label');
|
515
555
|
});
|
516
556
|
it('should render table data labels correctly for mobile breakpoint for childless', () => {
|
517
|
-
(0, react_2.render)(
|
557
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: CHILDLESS_TABLE }));
|
518
558
|
expect(react_2.screen.getByRole('cell')).not.toHaveAttribute('extraHeaders', 'Column 1');
|
519
559
|
});
|
520
560
|
it('should render table data labels correctly for mobile breakpoint for empty', () => {
|
521
|
-
(0, react_2.render)(
|
561
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: EMPTY_TABLE }));
|
522
562
|
expect(react_2.screen.getByRole('cell')).not.toHaveAttribute('extraHeaders', '');
|
523
563
|
});
|
524
564
|
it('should render custom table aria label correctly', () => {
|
525
|
-
(0, react_2.render)(
|
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' } }));
|
526
566
|
expect(react_2.screen.getByRole('grid', { name: /Test/i })).toBeTruthy();
|
527
567
|
});
|
528
568
|
it('should render beforeMainContent with main content', () => {
|
529
569
|
const mainContent = 'Main message content';
|
530
570
|
const beforeMainContentText = 'Before main content';
|
531
|
-
const beforeMainContent =
|
532
|
-
(0, react_2.render)(
|
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 } }));
|
533
573
|
expect(react_2.screen.getByText(beforeMainContentText)).toBeTruthy();
|
534
574
|
expect(react_2.screen.getByText(mainContent)).toBeTruthy();
|
535
575
|
});
|
536
576
|
it('should render afterMainContent with main content', () => {
|
537
577
|
const mainContent = 'Main message content';
|
538
578
|
const afterMainContentText = 'After main content';
|
539
|
-
const afterMainContent =
|
540
|
-
(0, react_2.render)(
|
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 } }));
|
541
581
|
expect(react_2.screen.getByText(afterMainContentText)).toBeTruthy();
|
542
582
|
expect(react_2.screen.getByText(mainContent)).toBeTruthy();
|
543
583
|
});
|
544
584
|
it('should render endContent with main content', () => {
|
545
585
|
const mainContent = 'Main message content';
|
546
586
|
const endMainContentText = 'End content';
|
547
|
-
const endContent =
|
548
|
-
(0, react_2.render)(
|
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 } }));
|
549
589
|
expect(react_2.screen.getByText(endMainContentText)).toBeTruthy();
|
550
590
|
expect(react_2.screen.getByText(mainContent)).toBeTruthy();
|
551
591
|
});
|
552
592
|
it('should render all parts of extraContent with main content', () => {
|
553
|
-
const beforeMainContent =
|
554
|
-
const afterMainContent =
|
555
|
-
const endContent =
|
556
|
-
(0, react_2.render)(
|
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 } }));
|
557
597
|
expect(react_2.screen.getByText('Before main content')).toBeTruthy();
|
558
598
|
expect(react_2.screen.getByText('Main message content')).toBeTruthy();
|
559
599
|
expect(react_2.screen.getByText('After main content')).toBeTruthy();
|
560
600
|
expect(react_2.screen.getByText('End content')).toBeTruthy();
|
561
601
|
});
|
562
602
|
it('should not render extraContent when not provided', () => {
|
563
|
-
(0, react_2.render)(
|
603
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", content: "Main message content" }));
|
564
604
|
// Ensure no extraContent is rendered
|
565
605
|
expect(react_2.screen.getByText('Main message content')).toBeTruthy();
|
566
606
|
expect(react_2.screen.queryByText('Before main content')).toBeFalsy();
|
@@ -568,7 +608,7 @@ describe('Message', () => {
|
|
568
608
|
expect(react_2.screen.queryByText('end message content')).toBeFalsy();
|
569
609
|
});
|
570
610
|
it('should handle undefined or null values in extraContent gracefully', () => {
|
571
|
-
(0, react_2.render)(
|
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 } }));
|
572
612
|
// Ensure that no extraContent is rendered if they are null or undefined
|
573
613
|
expect(react_2.screen.getByText('Main message content')).toBeTruthy();
|
574
614
|
expect(react_2.screen.queryByText('Before main content')).toBeFalsy();
|
@@ -576,64 +616,66 @@ describe('Message', () => {
|
|
576
616
|
expect(react_2.screen.queryByText('end message content')).toBeFalsy();
|
577
617
|
});
|
578
618
|
it('should render JSX in extraContent correctly', () => {
|
579
|
-
const beforeMainContent = (
|
580
|
-
|
581
|
-
const
|
582
|
-
|
583
|
-
const endContent = (react_1.default.createElement("div", { "data-testid": "end-main-content" },
|
584
|
-
react_1.default.createElement("strong", null, "Bold end content")));
|
585
|
-
(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 } }));
|
586
623
|
// Check that the JSX is correctly rendered
|
587
624
|
expect(react_2.screen.getByTestId('before-main-content')).toContainHTML('<strong>Bold before content</strong>');
|
588
625
|
expect(react_2.screen.getByTestId('after-main-content')).toContainHTML('<strong>Bold after content</strong>');
|
589
626
|
expect(react_2.screen.getByTestId('end-main-content')).toContainHTML('<strong>Bold end content</strong>');
|
590
627
|
});
|
591
628
|
it('should handle image correctly', () => {
|
592
|
-
(0, react_2.render)(
|
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 }));
|
593
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');
|
594
636
|
});
|
595
637
|
it('should handle external links correctly', () => {
|
596
|
-
(0, react_2.render)(
|
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/)` }));
|
597
639
|
// we are mocking rehype libraries, so we can't test target _blank addition on links directly with RTL
|
598
640
|
expect(rehype_external_links_1.default).toHaveBeenCalledTimes(1);
|
599
641
|
});
|
600
642
|
it('should handle external links correctly', () => {
|
601
|
-
(0, react_2.render)(
|
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 }));
|
602
644
|
// we are mocking rehype libraries, so we can't test target _blank addition on links directly with RTL
|
603
645
|
expect(rehype_external_links_1.default).not.toHaveBeenCalled();
|
604
646
|
});
|
605
647
|
it('should handle extra link props correctly', () => __awaiter(void 0, void 0, void 0, function* () {
|
606
648
|
const spy = jest.fn();
|
607
|
-
(0, react_2.render)(
|
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 } }));
|
608
650
|
yield user_event_1.default.click(react_2.screen.getByRole('link', { name: /PatternFly/i }));
|
609
651
|
expect(spy).toHaveBeenCalledTimes(1);
|
610
652
|
}));
|
611
653
|
it('should handle error correctly', () => {
|
612
|
-
(0, react_2.render)(
|
654
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR }));
|
613
655
|
expect(react_2.screen.getByRole('heading', { name: /Could not load chat/i })).toBeTruthy();
|
614
656
|
expect(react_2.screen.getByRole('link', { name: /Start a new chat/i })).toBeTruthy();
|
615
657
|
expect(react_2.screen.getByRole('link', { name: /Contact support/i })).toBeTruthy();
|
616
658
|
expect(react_2.screen.getByText('Wait a few minutes and check your network settings. If the issue persists:')).toBeTruthy();
|
617
659
|
});
|
618
660
|
it('should handle error correctly when loading', () => {
|
619
|
-
(0, react_2.render)(
|
661
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR, isLoading: true }));
|
620
662
|
expect(react_2.screen.queryByRole('heading', { name: /Could not load chat/i })).toBeFalsy();
|
621
663
|
expect(react_2.screen.getByText('Loading message')).toBeTruthy();
|
622
664
|
});
|
623
665
|
it('should handle error correctly when these is content', () => {
|
624
|
-
(0, react_2.render)(
|
666
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", error: ERROR, content: "Test" }));
|
625
667
|
expect(react_2.screen.getByRole('heading', { name: /Could not load chat/i })).toBeTruthy();
|
626
668
|
expect(react_2.screen.queryByText('Test')).toBeFalsy();
|
627
669
|
});
|
628
670
|
it('should handle isEditable when there is message content', () => {
|
629
|
-
(0, react_2.render)(
|
671
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, content: "Test" }));
|
630
672
|
expect(react_2.screen.getByRole('textbox')).toBeTruthy();
|
631
673
|
expect(react_2.screen.getByRole('textbox')).toHaveValue('Test');
|
632
674
|
expect(react_2.screen.getByRole('button', { name: /Update/i })).toBeTruthy();
|
633
675
|
expect(react_2.screen.getByRole('button', { name: /Cancel/i })).toBeTruthy();
|
634
676
|
});
|
635
677
|
it('should handle isEditable when there is no message content', () => {
|
636
|
-
(0, react_2.render)(
|
678
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true }));
|
637
679
|
expect(react_2.screen.getByRole('textbox')).toBeTruthy();
|
638
680
|
expect(react_2.screen.getByRole('textbox')).toHaveValue('');
|
639
681
|
expect(react_2.screen.getByRole('textbox')).toHaveAttribute('placeholder', 'Edit prompt message...');
|
@@ -641,33 +683,33 @@ describe('Message', () => {
|
|
641
683
|
expect(react_2.screen.getByRole('button', { name: /Cancel/i })).toBeTruthy();
|
642
684
|
});
|
643
685
|
it('should be able to change edit placeholder', () => {
|
644
|
-
(0, react_2.render)(
|
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" }));
|
645
687
|
expect(react_2.screen.getByRole('textbox')).toBeTruthy();
|
646
688
|
expect(react_2.screen.getByRole('textbox')).toHaveValue('');
|
647
689
|
expect(react_2.screen.getByRole('textbox')).toHaveAttribute('placeholder', 'I am a placeholder');
|
648
690
|
});
|
649
691
|
it('should be able to change updateWord', () => {
|
650
|
-
(0, react_2.render)(
|
692
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, updateWord: "Submit" }));
|
651
693
|
expect(react_2.screen.getByRole('button', { name: /Submit/i })).toBeTruthy();
|
652
694
|
});
|
653
695
|
it('should be able to change cancelWord', () => {
|
654
|
-
(0, react_2.render)(
|
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" }));
|
655
697
|
expect(react_2.screen.getByRole('button', { name: /Don't submit/i })).toBeTruthy();
|
656
698
|
});
|
657
699
|
it('should be able to add onEditUpdate', () => __awaiter(void 0, void 0, void 0, function* () {
|
658
700
|
const spy = jest.fn();
|
659
|
-
(0, react_2.render)(
|
701
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, onEditUpdate: spy }));
|
660
702
|
yield user_event_1.default.click(react_2.screen.getByRole('button', { name: /Update/i }));
|
661
703
|
expect(spy).toHaveBeenCalledTimes(1);
|
662
704
|
}));
|
663
705
|
it('should be able to add onEditCancel', () => __awaiter(void 0, void 0, void 0, function* () {
|
664
706
|
const spy = jest.fn();
|
665
|
-
(0, react_2.render)(
|
707
|
+
(0, react_2.render)((0, jsx_runtime_1.jsx)(Message_1.default, { avatar: "./img", role: "user", name: "User", isEditable: true, onEditCancel: spy }));
|
666
708
|
yield user_event_1.default.click(react_2.screen.getByRole('button', { name: /Cancel/i }));
|
667
709
|
expect(spy).toHaveBeenCalledTimes(1);
|
668
710
|
}));
|
669
711
|
it('should be able to add editFormProps', () => {
|
670
|
-
const { container } = (0, react_2.render)(
|
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' } }));
|
671
713
|
const form = container.querySelector('form');
|
672
714
|
expect(form).toHaveClass('test');
|
673
715
|
});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import
|
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:
|
17
|
+
declare const MessageInput: FunctionComponent<MessageInputProps>;
|
18
18
|
export default MessageInput;
|