@patternfly/chatbot 6.8.0-prerelease.8 → 6.8.0-prerelease.9
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/CodeModal/CodeModal.js +5 -0
- package/dist/cjs/MarkdownContent/MarkdownContent.d.ts +26 -7
- package/dist/cjs/MarkdownContent/MarkdownContent.js +79 -166
- package/dist/cjs/MarkdownContent/MarkdownRenderer.d.ts +6 -0
- package/dist/cjs/MarkdownContent/MarkdownRenderer.js +187 -0
- package/dist/cjs/Message/Message.d.ts +3 -4
- package/dist/cjs/Message/Message.js +0 -2
- package/dist/cjs/MessageBox/MessageBox.js +5 -1
- package/dist/cjs/index.d.ts +0 -8
- package/dist/cjs/index.js +1 -13
- package/dist/css/main.css +18 -3
- package/dist/css/main.css.map +1 -1
- package/dist/esm/CodeModal/CodeModal.js +5 -0
- package/dist/esm/MarkdownContent/MarkdownContent.d.ts +26 -7
- package/dist/esm/MarkdownContent/MarkdownContent.js +52 -165
- package/dist/esm/MarkdownContent/MarkdownRenderer.d.ts +6 -0
- package/dist/esm/MarkdownContent/MarkdownRenderer.js +182 -0
- package/dist/esm/Message/Message.d.ts +3 -4
- package/dist/esm/Message/Message.js +0 -2
- package/dist/esm/MessageBox/MessageBox.js +5 -1
- package/dist/esm/index.d.ts +0 -8
- package/dist/esm/index.js +0 -8
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/generate-index.js +41 -16
- package/generate-index.test.js +68 -0
- package/monaco-environment.js +45 -0
- package/package.json +20 -2
- package/patternfly-docs/content/extensions/chatbot/chatbot.md +1 -0
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/BotMessage.tsx +1 -1
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/MessageWithQuickStart.tsx +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/Messages.md +2 -2
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/UserMessage.tsx +1 -1
- package/patternfly-docs/content/extensions/chatbot/examples/Messages/monitor-sampleapp-quickstart.ts +1 -0
- package/patternfly-docs/content/extensions/chatbot/tree-shaking.md +124 -0
- package/patternfly-docs/monaco-environment.js +45 -0
- package/patternfly-docs/patternfly-docs.css.js +6 -0
- package/src/Chatbot/Chatbot.scss +4 -0
- package/src/ChatbotContent/ChatbotContent.scss +1 -1
- package/src/ChatbotFooter/ChatbotFooter.scss +2 -2
- package/src/ChatbotHeader/ChatbotHeader.scss +4 -0
- package/src/ChatbotModal/ChatbotModal.scss +10 -0
- package/src/CodeModal/CodeModal.tsx +6 -0
- package/src/DeepThinking/DeepThinking.test.tsx +10 -12
- package/src/MarkdownContent/MarkdownContent.test.tsx +52 -5
- package/src/MarkdownContent/MarkdownContent.tsx +77 -220
- package/src/MarkdownContent/MarkdownRenderer.tsx +235 -0
- package/src/Message/Message.test.tsx +5 -0
- package/src/Message/Message.tsx +3 -5
- package/src/MessageBox/MessageBox.tsx +13 -1
- package/src/ResponseActions/ResponseActions.test.tsx +42 -48
- package/src/ToolCall/ToolCall.test.tsx +6 -9
- package/src/ToolResponse/ToolResponse.test.tsx +16 -22
- package/src/index.ts +0 -12
- package/src/test-utils/markdownTestUtils.ts +21 -0
- package/tsconfig.json +6 -1
- package/dist/cjs/AttachmentEdit/AttachmentEdit.test.d.ts +0 -1
- package/dist/cjs/AttachmentEdit/AttachmentEdit.test.js +0 -77
- package/dist/cjs/Chatbot/Chatbot.test.d.ts +0 -1
- package/dist/cjs/Chatbot/Chatbot.test.js +0 -32
- package/dist/cjs/ChatbotAlert/ChatbotAlert.test.d.ts +0 -1
- package/dist/cjs/ChatbotAlert/ChatbotAlert.test.js +0 -27
- package/dist/cjs/ChatbotContent/ChatbotContent.test.d.ts +0 -1
- package/dist/cjs/ChatbotContent/ChatbotContent.test.js +0 -22
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.d.ts +0 -1
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +0 -75
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.d.ts +0 -1
- package/dist/cjs/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +0 -601
- package/dist/cjs/ChatbotFooter/ChatbotFooter.test.d.ts +0 -1
- package/dist/cjs/ChatbotFooter/ChatbotFooter.test.js +0 -27
- package/dist/cjs/ChatbotFooter/ChatbotFooternote.test.d.ts +0 -1
- package/dist/cjs/ChatbotFooter/ChatbotFooternote.test.js +0 -87
- package/dist/cjs/ChatbotHeader/ChatbotHeader.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeader.test.js +0 -18
- package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderActions.test.js +0 -18
- package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderCloseButton.test.js +0 -22
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMain.test.js +0 -18
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderMenu.test.js +0 -22
- package/dist/cjs/ChatbotHeader/ChatbotHeaderNewChatButton.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderNewChatButton.test.js +0 -22
- package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +0 -46
- package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +0 -44
- package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.test.d.ts +0 -1
- package/dist/cjs/ChatbotHeader/ChatbotHeaderTitle.test.js +0 -55
- package/dist/cjs/ChatbotModal/ChatbotModal.test.d.ts +0 -1
- package/dist/cjs/ChatbotModal/ChatbotModal.test.js +0 -16
- package/dist/cjs/ChatbotToggle/ChatbotToggle.test.d.ts +0 -1
- package/dist/cjs/ChatbotToggle/ChatbotToggle.test.js +0 -64
- package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.d.ts +0 -1
- package/dist/cjs/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +0 -61
- package/dist/cjs/CodeModal/CodeModal.test.d.ts +0 -1
- package/dist/cjs/CodeModal/CodeModal.test.js +0 -34
- package/dist/cjs/Compare/Compare.test.d.ts +0 -1
- package/dist/cjs/Compare/Compare.test.js +0 -18
- package/dist/cjs/DeepThinking/DeepThinking.test.d.ts +0 -1
- package/dist/cjs/DeepThinking/DeepThinking.test.js +0 -146
- package/dist/cjs/FileDetails/FileDetails.test.d.ts +0 -1
- package/dist/cjs/FileDetails/FileDetails.test.js +0 -42
- package/dist/cjs/FileDetailsLabel/FileDetailsLabel.test.d.ts +0 -1
- package/dist/cjs/FileDetailsLabel/FileDetailsLabel.test.js +0 -79
- package/dist/cjs/FileDropZone/FileDropZone.test.d.ts +0 -1
- package/dist/cjs/FileDropZone/FileDropZone.test.js +0 -100
- package/dist/cjs/FilePreview/FilePreview.test.d.ts +0 -1
- package/dist/cjs/FilePreview/FilePreview.test.js +0 -97
- package/dist/cjs/ImagePreview/ImagePreview.test.d.ts +0 -1
- package/dist/cjs/ImagePreview/ImagePreview.test.js +0 -225
- package/dist/cjs/MarkdownContent/MarkdownContent.test.d.ts +0 -1
- package/dist/cjs/MarkdownContent/MarkdownContent.test.js +0 -192
- package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.test.d.ts +0 -1
- package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.test.js +0 -131
- package/dist/cjs/Message/ErrorMessage/ErrorMessage.test.d.ts +0 -1
- package/dist/cjs/Message/ErrorMessage/ErrorMessage.test.js +0 -30
- package/dist/cjs/Message/Message.test.d.ts +0 -1
- package/dist/cjs/Message/Message.test.js +0 -1128
- package/dist/cjs/Message/MessageAndActions/MessageAndActions.test.d.ts +0 -1
- package/dist/cjs/Message/MessageAndActions/MessageAndActions.test.js +0 -25
- package/dist/cjs/Message/MessageAttachments/MessageAttachmentItem.test.d.ts +0 -1
- package/dist/cjs/Message/MessageAttachments/MessageAttachmentItem.test.js +0 -25
- package/dist/cjs/Message/MessageAttachments/MessageAttachmentsContainer.test.d.ts +0 -1
- package/dist/cjs/Message/MessageAttachments/MessageAttachmentsContainer.test.js +0 -25
- package/dist/cjs/Message/MessageLoading.test.d.ts +0 -1
- package/dist/cjs/Message/MessageLoading.test.js +0 -25
- package/dist/cjs/Message/QuickResponse/QuickResponse.test.d.ts +0 -1
- package/dist/cjs/Message/QuickResponse/QuickResponse.test.js +0 -109
- package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.test.d.ts +0 -1
- package/dist/cjs/Message/QuickStarts/QuickStartTileDescription.test.js +0 -76
- package/dist/cjs/Message/UserFeedback/UserFeedback.test.d.ts +0 -1
- package/dist/cjs/Message/UserFeedback/UserFeedback.test.js +0 -181
- package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.test.d.ts +0 -1
- package/dist/cjs/Message/UserFeedback/UserFeedbackComplete.test.js +0 -243
- package/dist/cjs/MessageBar/AttachButton.test.d.ts +0 -1
- package/dist/cjs/MessageBar/AttachButton.test.js +0 -152
- package/dist/cjs/MessageBar/MessageBar.test.d.ts +0 -1
- package/dist/cjs/MessageBar/MessageBar.test.js +0 -338
- package/dist/cjs/MessageBar/SendButton.test.d.ts +0 -1
- package/dist/cjs/MessageBar/SendButton.test.js +0 -58
- package/dist/cjs/MessageBar/StopButton.test.d.ts +0 -1
- package/dist/cjs/MessageBar/StopButton.test.js +0 -58
- package/dist/cjs/MessageBox/JumpButton.test.d.ts +0 -1
- package/dist/cjs/MessageBox/JumpButton.test.js +0 -39
- package/dist/cjs/MessageBox/MessageBox.test.d.ts +0 -1
- package/dist/cjs/MessageBox/MessageBox.test.js +0 -294
- package/dist/cjs/MessageDivider/MessageDivider.test.d.ts +0 -1
- package/dist/cjs/MessageDivider/MessageDivider.test.js +0 -29
- package/dist/cjs/Onboarding/Onboarding.test.d.ts +0 -1
- package/dist/cjs/Onboarding/Onboarding.test.js +0 -80
- package/dist/cjs/PreviewAttachment/PreviewAttachment.test.d.ts +0 -1
- package/dist/cjs/PreviewAttachment/PreviewAttachment.test.js +0 -50
- package/dist/cjs/ResponseActions/ResponseActionButton.test.d.ts +0 -1
- package/dist/cjs/ResponseActions/ResponseActionButton.test.js +0 -54
- package/dist/cjs/ResponseActions/ResponseActions.test.d.ts +0 -1
- package/dist/cjs/ResponseActions/ResponseActions.test.js +0 -455
- package/dist/cjs/ResponseActions/ResponseActionsGroups.test.d.ts +0 -1
- package/dist/cjs/ResponseActions/ResponseActionsGroups.test.js +0 -25
- package/dist/cjs/Settings/SettingsForm.test.d.ts +0 -1
- package/dist/cjs/Settings/SettingsForm.test.js +0 -35
- package/dist/cjs/SourcesCard/SourcesCard.test.d.ts +0 -1
- package/dist/cjs/SourcesCard/SourcesCard.test.js +0 -39
- package/dist/cjs/SourcesCardBase/SourcesCardBase.test.d.ts +0 -1
- package/dist/cjs/SourcesCardBase/SourcesCardBase.test.js +0 -199
- package/dist/cjs/TermsOfUse/TermsOfUse.test.d.ts +0 -1
- package/dist/cjs/TermsOfUse/TermsOfUse.test.js +0 -77
- package/dist/cjs/ToolCall/ToolCall.test.d.ts +0 -1
- package/dist/cjs/ToolCall/ToolCall.test.js +0 -201
- package/dist/cjs/ToolResponse/ToolResponse.test.d.ts +0 -1
- package/dist/cjs/ToolResponse/ToolResponse.test.js +0 -184
- package/dist/cjs/__mocks__/monaco-editor.d.ts +0 -11
- package/dist/cjs/__mocks__/monaco-editor.js +0 -18
- package/dist/cjs/__mocks__/rehype-external-links.d.ts +0 -2
- package/dist/cjs/__mocks__/rehype-external-links.js +0 -4
- package/dist/cjs/__mocks__/rehype-highlight.d.ts +0 -2
- package/dist/cjs/__mocks__/rehype-highlight.js +0 -4
- package/dist/cjs/__mocks__/rehype-sanitize.d.ts +0 -2
- package/dist/cjs/__mocks__/rehype-sanitize.js +0 -4
- package/dist/cjs/__mocks__/rehype-unwrap-images.d.ts +0 -2
- package/dist/cjs/__mocks__/rehype-unwrap-images.js +0 -4
- package/dist/esm/AttachmentEdit/AttachmentEdit.test.d.ts +0 -1
- package/dist/esm/AttachmentEdit/AttachmentEdit.test.js +0 -72
- package/dist/esm/Chatbot/Chatbot.test.d.ts +0 -1
- package/dist/esm/Chatbot/Chatbot.test.js +0 -27
- package/dist/esm/ChatbotAlert/ChatbotAlert.test.d.ts +0 -1
- package/dist/esm/ChatbotAlert/ChatbotAlert.test.js +0 -22
- package/dist/esm/ChatbotContent/ChatbotContent.test.d.ts +0 -1
- package/dist/esm/ChatbotContent/ChatbotContent.test.js +0 -17
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.d.ts +0 -1
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryDropdown.test.js +0 -70
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.d.ts +0 -1
- package/dist/esm/ChatbotConversationHistoryNav/ChatbotConversationHistoryNav.test.js +0 -596
- package/dist/esm/ChatbotFooter/ChatbotFooter.test.d.ts +0 -1
- package/dist/esm/ChatbotFooter/ChatbotFooter.test.js +0 -22
- package/dist/esm/ChatbotFooter/ChatbotFooternote.test.d.ts +0 -1
- package/dist/esm/ChatbotFooter/ChatbotFooternote.test.js +0 -82
- package/dist/esm/ChatbotHeader/ChatbotHeader.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeader.test.js +0 -13
- package/dist/esm/ChatbotHeader/ChatbotHeaderActions.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderActions.test.js +0 -13
- package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderCloseButton.test.js +0 -20
- package/dist/esm/ChatbotHeader/ChatbotHeaderMain.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderMain.test.js +0 -13
- package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderMenu.test.js +0 -20
- package/dist/esm/ChatbotHeader/ChatbotHeaderNewChatButton.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderNewChatButton.test.js +0 -20
- package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderOptionsDropdown.test.js +0 -44
- package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderSelectorDropdown.test.js +0 -42
- package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.test.d.ts +0 -1
- package/dist/esm/ChatbotHeader/ChatbotHeaderTitle.test.js +0 -50
- package/dist/esm/ChatbotModal/ChatbotModal.test.d.ts +0 -1
- package/dist/esm/ChatbotModal/ChatbotModal.test.js +0 -11
- package/dist/esm/ChatbotToggle/ChatbotToggle.test.d.ts +0 -1
- package/dist/esm/ChatbotToggle/ChatbotToggle.test.js +0 -59
- package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.d.ts +0 -1
- package/dist/esm/ChatbotWelcomePrompt/ChatbotWelcomePrompt.test.js +0 -56
- package/dist/esm/CodeModal/CodeModal.test.d.ts +0 -1
- package/dist/esm/CodeModal/CodeModal.test.js +0 -29
- package/dist/esm/Compare/Compare.test.d.ts +0 -1
- package/dist/esm/Compare/Compare.test.js +0 -13
- package/dist/esm/DeepThinking/DeepThinking.test.d.ts +0 -1
- package/dist/esm/DeepThinking/DeepThinking.test.js +0 -141
- package/dist/esm/FileDetails/FileDetails.test.d.ts +0 -1
- package/dist/esm/FileDetails/FileDetails.test.js +0 -37
- package/dist/esm/FileDetailsLabel/FileDetailsLabel.test.d.ts +0 -1
- package/dist/esm/FileDetailsLabel/FileDetailsLabel.test.js +0 -74
- package/dist/esm/FileDropZone/FileDropZone.test.d.ts +0 -1
- package/dist/esm/FileDropZone/FileDropZone.test.js +0 -95
- package/dist/esm/FilePreview/FilePreview.test.d.ts +0 -1
- package/dist/esm/FilePreview/FilePreview.test.js +0 -92
- package/dist/esm/ImagePreview/ImagePreview.test.d.ts +0 -1
- package/dist/esm/ImagePreview/ImagePreview.test.js +0 -220
- package/dist/esm/MarkdownContent/MarkdownContent.test.d.ts +0 -1
- package/dist/esm/MarkdownContent/MarkdownContent.test.js +0 -187
- package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.test.d.ts +0 -1
- package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.test.js +0 -126
- package/dist/esm/Message/ErrorMessage/ErrorMessage.test.d.ts +0 -1
- package/dist/esm/Message/ErrorMessage/ErrorMessage.test.js +0 -25
- package/dist/esm/Message/Message.test.d.ts +0 -1
- package/dist/esm/Message/Message.test.js +0 -1123
- package/dist/esm/Message/MessageAndActions/MessageAndActions.test.d.ts +0 -1
- package/dist/esm/Message/MessageAndActions/MessageAndActions.test.js +0 -20
- package/dist/esm/Message/MessageAttachments/MessageAttachmentItem.test.d.ts +0 -1
- package/dist/esm/Message/MessageAttachments/MessageAttachmentItem.test.js +0 -20
- package/dist/esm/Message/MessageAttachments/MessageAttachmentsContainer.test.d.ts +0 -1
- package/dist/esm/Message/MessageAttachments/MessageAttachmentsContainer.test.js +0 -20
- package/dist/esm/Message/MessageLoading.test.d.ts +0 -1
- package/dist/esm/Message/MessageLoading.test.js +0 -20
- package/dist/esm/Message/QuickResponse/QuickResponse.test.d.ts +0 -1
- package/dist/esm/Message/QuickResponse/QuickResponse.test.js +0 -104
- package/dist/esm/Message/QuickStarts/QuickStartTileDescription.test.d.ts +0 -1
- package/dist/esm/Message/QuickStarts/QuickStartTileDescription.test.js +0 -48
- package/dist/esm/Message/UserFeedback/UserFeedback.test.d.ts +0 -1
- package/dist/esm/Message/UserFeedback/UserFeedback.test.js +0 -176
- package/dist/esm/Message/UserFeedback/UserFeedbackComplete.test.d.ts +0 -1
- package/dist/esm/Message/UserFeedback/UserFeedbackComplete.test.js +0 -238
- package/dist/esm/MessageBar/AttachButton.test.d.ts +0 -1
- package/dist/esm/MessageBar/AttachButton.test.js +0 -147
- package/dist/esm/MessageBar/MessageBar.test.d.ts +0 -1
- package/dist/esm/MessageBar/MessageBar.test.js +0 -333
- package/dist/esm/MessageBar/SendButton.test.d.ts +0 -1
- package/dist/esm/MessageBar/SendButton.test.js +0 -53
- package/dist/esm/MessageBar/StopButton.test.d.ts +0 -1
- package/dist/esm/MessageBar/StopButton.test.js +0 -53
- package/dist/esm/MessageBox/JumpButton.test.d.ts +0 -1
- package/dist/esm/MessageBox/JumpButton.test.js +0 -34
- package/dist/esm/MessageBox/MessageBox.test.d.ts +0 -1
- package/dist/esm/MessageBox/MessageBox.test.js +0 -289
- package/dist/esm/MessageDivider/MessageDivider.test.d.ts +0 -1
- package/dist/esm/MessageDivider/MessageDivider.test.js +0 -24
- package/dist/esm/Onboarding/Onboarding.test.d.ts +0 -1
- package/dist/esm/Onboarding/Onboarding.test.js +0 -75
- package/dist/esm/PreviewAttachment/PreviewAttachment.test.d.ts +0 -1
- package/dist/esm/PreviewAttachment/PreviewAttachment.test.js +0 -48
- package/dist/esm/ResponseActions/ResponseActionButton.test.d.ts +0 -1
- package/dist/esm/ResponseActions/ResponseActionButton.test.js +0 -49
- package/dist/esm/ResponseActions/ResponseActions.test.d.ts +0 -1
- package/dist/esm/ResponseActions/ResponseActions.test.js +0 -450
- package/dist/esm/ResponseActions/ResponseActionsGroups.test.d.ts +0 -1
- package/dist/esm/ResponseActions/ResponseActionsGroups.test.js +0 -20
- package/dist/esm/Settings/SettingsForm.test.d.ts +0 -1
- package/dist/esm/Settings/SettingsForm.test.js +0 -33
- package/dist/esm/SourcesCard/SourcesCard.test.d.ts +0 -1
- package/dist/esm/SourcesCard/SourcesCard.test.js +0 -34
- package/dist/esm/SourcesCardBase/SourcesCardBase.test.d.ts +0 -1
- package/dist/esm/SourcesCardBase/SourcesCardBase.test.js +0 -194
- package/dist/esm/TermsOfUse/TermsOfUse.test.d.ts +0 -1
- package/dist/esm/TermsOfUse/TermsOfUse.test.js +0 -72
- package/dist/esm/ToolCall/ToolCall.test.d.ts +0 -1
- package/dist/esm/ToolCall/ToolCall.test.js +0 -196
- package/dist/esm/ToolResponse/ToolResponse.test.d.ts +0 -1
- package/dist/esm/ToolResponse/ToolResponse.test.js +0 -179
- package/dist/esm/__mocks__/monaco-editor.d.ts +0 -11
- package/dist/esm/__mocks__/monaco-editor.js +0 -18
- package/dist/esm/__mocks__/rehype-external-links.d.ts +0 -2
- package/dist/esm/__mocks__/rehype-external-links.js +0 -2
- package/dist/esm/__mocks__/rehype-highlight.d.ts +0 -2
- package/dist/esm/__mocks__/rehype-highlight.js +0 -2
- package/dist/esm/__mocks__/rehype-sanitize.d.ts +0 -2
- package/dist/esm/__mocks__/rehype-sanitize.js +0 -2
- package/dist/esm/__mocks__/rehype-unwrap-images.d.ts +0 -2
- package/dist/esm/__mocks__/rehype-unwrap-images.js +0 -2
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import '@testing-library/jest-dom';
|
|
3
|
-
import { render, screen } from '@testing-library/react';
|
|
4
|
-
import MessageAndActions from './MessageAndActions';
|
|
5
|
-
test('Renders with children', () => {
|
|
6
|
-
render(_jsx(MessageAndActions, { children: "Test content" }));
|
|
7
|
-
expect(screen.getByText('Test content')).toBeInTheDocument();
|
|
8
|
-
});
|
|
9
|
-
test('Renders with pf-chatbot__message-and-actions class by default', () => {
|
|
10
|
-
render(_jsx(MessageAndActions, { children: "Test content" }));
|
|
11
|
-
expect(screen.getByText('Test content')).toHaveClass('pf-chatbot__message-and-actions', { exact: true });
|
|
12
|
-
});
|
|
13
|
-
test('Renders with custom className', () => {
|
|
14
|
-
render(_jsx(MessageAndActions, { className: "custom-class", children: "Test content" }));
|
|
15
|
-
expect(screen.getByText('Test content')).toHaveClass('custom-class');
|
|
16
|
-
});
|
|
17
|
-
test('Spreads additional props', () => {
|
|
18
|
-
render(_jsx(MessageAndActions, { id: "test-id", children: "Test content" }));
|
|
19
|
-
expect(screen.getByText('Test content')).toHaveAttribute('id', 'test-id');
|
|
20
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import '@testing-library/jest-dom';
|
|
3
|
-
import { render, screen } from '@testing-library/react';
|
|
4
|
-
import MessageAttachmentItem from './MessageAttachmentItem';
|
|
5
|
-
test('Renders with children', () => {
|
|
6
|
-
render(_jsx(MessageAttachmentItem, { children: "Test content" }));
|
|
7
|
-
expect(screen.getByText('Test content')).toBeInTheDocument();
|
|
8
|
-
});
|
|
9
|
-
test('Renders with pf-chatbot__message-attachment class by default', () => {
|
|
10
|
-
render(_jsx(MessageAttachmentItem, { children: "Test content" }));
|
|
11
|
-
expect(screen.getByText('Test content')).toHaveClass('pf-chatbot__message-attachment', { exact: true });
|
|
12
|
-
});
|
|
13
|
-
test('Renders with custom className', () => {
|
|
14
|
-
render(_jsx(MessageAttachmentItem, { className: "custom-class", children: "Test content" }));
|
|
15
|
-
expect(screen.getByText('Test content')).toHaveClass('custom-class');
|
|
16
|
-
});
|
|
17
|
-
test('Spreads additional props', () => {
|
|
18
|
-
render(_jsx(MessageAttachmentItem, { id: "test-id", children: "Test content" }));
|
|
19
|
-
expect(screen.getByText('Test content')).toHaveAttribute('id', 'test-id');
|
|
20
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import '@testing-library/jest-dom';
|
|
3
|
-
import { render, screen } from '@testing-library/react';
|
|
4
|
-
import MessageAttachmentsContainer from './MessageAttachmentsContainer';
|
|
5
|
-
test('Renders with children', () => {
|
|
6
|
-
render(_jsx(MessageAttachmentsContainer, { children: "Test content" }));
|
|
7
|
-
expect(screen.getByText('Test content')).toBeInTheDocument();
|
|
8
|
-
});
|
|
9
|
-
test('Renders with pf-chatbot__message-attachments-container class by default', () => {
|
|
10
|
-
render(_jsx(MessageAttachmentsContainer, { children: "Test content" }));
|
|
11
|
-
expect(screen.getByText('Test content')).toHaveClass('pf-chatbot__message-attachments-container', { exact: true });
|
|
12
|
-
});
|
|
13
|
-
test('Renders with custom className', () => {
|
|
14
|
-
render(_jsx(MessageAttachmentsContainer, { className: "custom-class", children: "Test content" }));
|
|
15
|
-
expect(screen.getByText('Test content')).toHaveClass('custom-class');
|
|
16
|
-
});
|
|
17
|
-
test('Spreads additional props', () => {
|
|
18
|
-
render(_jsx(MessageAttachmentsContainer, { id: "test-id", children: "Test content" }));
|
|
19
|
-
expect(screen.getByText('Test content')).toHaveAttribute('id', 'test-id');
|
|
20
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import '@testing-library/jest-dom';
|
|
3
|
-
import { render, screen } from '@testing-library/react';
|
|
4
|
-
import MessageLoading from './MessageLoading';
|
|
5
|
-
test('Renders with pf-chatbot__message-loading class by default', () => {
|
|
6
|
-
render(_jsx(MessageLoading, { "data-testid": "test-id" }));
|
|
7
|
-
expect(screen.getByTestId('test-id')).toHaveClass('pf-chatbot__message-loading', { exact: true });
|
|
8
|
-
});
|
|
9
|
-
test('Renders with pf-m-primary class when isPrimary is true', () => {
|
|
10
|
-
render(_jsx(MessageLoading, { "data-testid": "test-id", isPrimary: true }));
|
|
11
|
-
expect(screen.getByTestId('test-id')).toHaveClass('pf-chatbot__message-loading pf-m-primary');
|
|
12
|
-
});
|
|
13
|
-
test('Renders loading word when loadingWord is passed', () => {
|
|
14
|
-
render(_jsx(MessageLoading, { loadingWord: "Loading message" }));
|
|
15
|
-
expect(screen.getByText('Loading message')).toBeInTheDocument();
|
|
16
|
-
});
|
|
17
|
-
test('Spreads additional props', () => {
|
|
18
|
-
render(_jsx(MessageLoading, { "data-testid": "test-id", id: "custom-id" }));
|
|
19
|
-
expect(screen.getByTestId('test-id')).toHaveAttribute('id', 'custom-id');
|
|
20
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
-
import { render, screen } from '@testing-library/react';
|
|
12
|
-
import userEvent from '@testing-library/user-event';
|
|
13
|
-
import '@testing-library/jest-dom';
|
|
14
|
-
import QuickResponse from './QuickResponse';
|
|
15
|
-
test('Renders with quick responses', () => {
|
|
16
|
-
const quickResponses = [
|
|
17
|
-
{ id: '1', content: 'Response 1' },
|
|
18
|
-
{ id: '2', content: 'Response 2' },
|
|
19
|
-
{ id: '3', content: 'Response 3' }
|
|
20
|
-
];
|
|
21
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
22
|
-
expect(screen.getByText('Response 1')).toBeVisible();
|
|
23
|
-
expect(screen.getByText('Response 2')).toBeVisible();
|
|
24
|
-
expect(screen.getByText('Response 3')).toBeVisible();
|
|
25
|
-
});
|
|
26
|
-
test('Renders with compact styling', () => {
|
|
27
|
-
const quickResponses = [{ id: '1', content: 'Compact response' }];
|
|
28
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses, isCompact: true }));
|
|
29
|
-
expect(screen.getByText('Compact response').closest('.pf-v6-c-label')).toHaveClass('pf-m-compact');
|
|
30
|
-
});
|
|
31
|
-
test('Renders with custom className on response', () => {
|
|
32
|
-
const quickResponses = [{ id: '1', content: 'Custom class response', className: 'custom-response-class' }];
|
|
33
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
34
|
-
expect(screen.getByText('Custom class response').closest('.pf-v6-c-label')).toHaveClass('custom-response-class');
|
|
35
|
-
});
|
|
36
|
-
test('Renders with custom container className', () => {
|
|
37
|
-
const quickResponses = [
|
|
38
|
-
{ id: '1', content: 'Response 1' },
|
|
39
|
-
{ id: '2', content: 'Response 2' }
|
|
40
|
-
];
|
|
41
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses, quickResponseContainerProps: { className: 'custom-container-class' } }));
|
|
42
|
-
expect(screen.getByText('Response 1').closest('.pf-v6-c-label-group')).toHaveClass('custom-container-class');
|
|
43
|
-
});
|
|
44
|
-
test('Spreads additional custom container props', () => {
|
|
45
|
-
const quickResponses = [
|
|
46
|
-
{ id: '1', content: 'Response 1' },
|
|
47
|
-
{ id: '2', content: 'Response 2' }
|
|
48
|
-
];
|
|
49
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses, quickResponseContainerProps: { id: 'custom-container-id' } }));
|
|
50
|
-
expect(screen.getByText('Response 1').closest('.pf-v6-c-label-group__list')).toHaveAttribute('id', 'custom-container-id');
|
|
51
|
-
});
|
|
52
|
-
test('Renders with pf-chatbot__message-quick-response--selected class after click', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
53
|
-
const user = userEvent.setup();
|
|
54
|
-
const quickResponses = [
|
|
55
|
-
{ id: '1', content: 'Response 1' },
|
|
56
|
-
{ id: '2', content: 'Response 2' }
|
|
57
|
-
];
|
|
58
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
59
|
-
yield user.click(screen.getByText('Response 1'));
|
|
60
|
-
expect(screen.getByText('Response 1').closest('.pf-v6-c-label')).toHaveClass('pf-chatbot__message-quick-response--selected');
|
|
61
|
-
}));
|
|
62
|
-
test('Does not calls onClick handler when not passed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
63
|
-
const user = userEvent.setup();
|
|
64
|
-
const handleClick = jest.fn();
|
|
65
|
-
const quickResponses = [{ id: '1', content: 'Clickable response' }];
|
|
66
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
67
|
-
yield user.click(screen.getByText('Clickable response'));
|
|
68
|
-
expect(handleClick).not.toHaveBeenCalled();
|
|
69
|
-
}));
|
|
70
|
-
test('Calls onClick handler when passed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
71
|
-
const user = userEvent.setup();
|
|
72
|
-
const handleClick = jest.fn();
|
|
73
|
-
const quickResponses = [{ id: '1', content: 'Clickable response', onClick: handleClick }];
|
|
74
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
75
|
-
yield user.click(screen.getByText('Clickable response'));
|
|
76
|
-
expect(handleClick).toHaveBeenCalled();
|
|
77
|
-
}));
|
|
78
|
-
test('Does not call onSelect when not passed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
79
|
-
const user = userEvent.setup();
|
|
80
|
-
const handleSelect = jest.fn();
|
|
81
|
-
const quickResponses = [
|
|
82
|
-
{ id: '1', content: 'Response 1' },
|
|
83
|
-
{ id: '2', content: 'Response 2' }
|
|
84
|
-
];
|
|
85
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
86
|
-
yield user.click(screen.getByText('Response 2'));
|
|
87
|
-
expect(handleSelect).not.toHaveBeenCalled();
|
|
88
|
-
}));
|
|
89
|
-
test('Calls onSelect when passed', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
90
|
-
const user = userEvent.setup();
|
|
91
|
-
const handleSelect = jest.fn();
|
|
92
|
-
const quickResponses = [
|
|
93
|
-
{ id: '1', content: 'Response 1' },
|
|
94
|
-
{ id: '2', content: 'Response 2' }
|
|
95
|
-
];
|
|
96
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses, onSelect: handleSelect }));
|
|
97
|
-
yield user.click(screen.getByText('Response 2'));
|
|
98
|
-
expect(handleSelect).toHaveBeenCalledWith('2');
|
|
99
|
-
}));
|
|
100
|
-
test('Spreads additional response props', () => {
|
|
101
|
-
const quickResponses = [{ id: '1', content: 'Response with props', isCompact: true, 'aria-label': 'Test label' }];
|
|
102
|
-
render(_jsx(QuickResponse, { quickResponses: quickResponses }));
|
|
103
|
-
expect(screen.getByText('Response with props').closest('.pf-v6-c-label')).toHaveAttribute('aria-label', 'Test label');
|
|
104
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
-
import { render, screen } from '@testing-library/react';
|
|
12
|
-
import '@testing-library/jest-dom';
|
|
13
|
-
import userEvent from '@testing-library/user-event';
|
|
14
|
-
import { monitorSampleAppQuickStart } from './monitor-sampleapp-quickstart';
|
|
15
|
-
import QuickStartTileDescription, { pluralizeWord } from './QuickStartTileDescription';
|
|
16
|
-
describe('pluralizeWord function', () => {
|
|
17
|
-
it('should render no plural correctly', () => {
|
|
18
|
-
expect(pluralizeWord(2, 'pizza')).toBe('pizzas');
|
|
19
|
-
});
|
|
20
|
-
});
|
|
21
|
-
describe('QuickStart tile description', () => {
|
|
22
|
-
it('should render no prereqs correctly', () => {
|
|
23
|
-
render(_jsx(QuickStartTileDescription, { description: monitorSampleAppQuickStart.spec.description }));
|
|
24
|
-
expect(screen.queryByRole('heading')).toBeFalsy();
|
|
25
|
-
});
|
|
26
|
-
it('should render singular prereq correctly', () => {
|
|
27
|
-
render(_jsx(QuickStartTileDescription, { description: monitorSampleAppQuickStart.spec.description, prerequisites: [`You completed the "Getting started with a sample" quick start.`] }));
|
|
28
|
-
expect(screen.getByRole('heading', { name: /1 Prerequisite/i })).toBeTruthy();
|
|
29
|
-
expect(screen.getByRole('button', { name: /Show prerequisite/i })).toBeTruthy();
|
|
30
|
-
});
|
|
31
|
-
it('should render plural prereq correctly', () => {
|
|
32
|
-
render(_jsx(QuickStartTileDescription, { description: monitorSampleAppQuickStart.spec.description, prerequisites: [
|
|
33
|
-
`You completed the "Getting started with a sample" quick start.`,
|
|
34
|
-
`You completed the app quick start`
|
|
35
|
-
] }));
|
|
36
|
-
expect(screen.getByRole('heading', { name: /2 Prerequisites/i })).toBeTruthy();
|
|
37
|
-
expect(screen.getByRole('button', { name: /Show prerequisites/i })).toBeTruthy();
|
|
38
|
-
});
|
|
39
|
-
it('should be able to click prereqs link', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
40
|
-
render(_jsx(QuickStartTileDescription, { description: monitorSampleAppQuickStart.spec.description, prerequisites: [`You completed the "Getting started with a sample" quick start.`] }));
|
|
41
|
-
const button = screen.getByRole('button', { name: /Show prerequisites/i });
|
|
42
|
-
expect(screen.queryByRole('dialog', { name: /Prerequisite/i })).toBeFalsy();
|
|
43
|
-
yield userEvent.click(button);
|
|
44
|
-
expect(screen.getByRole('dialog', { name: /Prerequisite/i })).toBeTruthy();
|
|
45
|
-
expect(screen.getByRole('button', { name: /Close/i })).toBeTruthy();
|
|
46
|
-
expect(screen.getByText(/You completed the "Getting started with a sample" quick start./i)).toBeTruthy();
|
|
47
|
-
}));
|
|
48
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|
|
@@ -1,176 +0,0 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
-
import { render, screen } from '@testing-library/react';
|
|
12
|
-
import '@testing-library/jest-dom';
|
|
13
|
-
import userEvent from '@testing-library/user-event';
|
|
14
|
-
import UserFeedback from './UserFeedback';
|
|
15
|
-
const MOCK_RESPONSES = [
|
|
16
|
-
{ id: '1', content: 'Helpful information', onClick: () => alert('Clicked helpful information') },
|
|
17
|
-
{ id: '2', content: 'Easy to understand', onClick: () => alert('Clicked easy to understand') },
|
|
18
|
-
{ id: '3', content: 'Resolved my issue', onClick: () => alert('Clicked resolved my issue') }
|
|
19
|
-
];
|
|
20
|
-
describe('UserFeedback', () => {
|
|
21
|
-
it('should render correctly', () => {
|
|
22
|
-
render(_jsx(UserFeedback, { onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, timestamp: "12/12/12" }));
|
|
23
|
-
expect(screen.getByRole('heading', { name: /Why did you choose this rating?/i })).toBeTruthy();
|
|
24
|
-
expect(screen.getByRole('list', { name: 'Quick feedback for message received at 12/12/12' })).toBeTruthy();
|
|
25
|
-
expect(screen.getByRole('button', { name: /Helpful information/i })).toBeTruthy();
|
|
26
|
-
expect(screen.getByRole('button', { name: /Easy to understand/i })).toBeTruthy();
|
|
27
|
-
expect(screen.getByRole('button', { name: /Resolved my issue/i })).toBeTruthy();
|
|
28
|
-
expect(screen.getByRole('button', { name: /Submit/i })).toBeTruthy();
|
|
29
|
-
expect(screen.getByRole('button', { name: 'Close feedback for message received at 12/12/12' })).toBeTruthy();
|
|
30
|
-
expect(screen.queryByRole('textbox', { name: /Provide optional additional feedback/i })).toBeFalsy();
|
|
31
|
-
});
|
|
32
|
-
it('should render different title correctly', () => {
|
|
33
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, title: "Thanks! Why?" }));
|
|
34
|
-
expect(screen.getByText('Thanks! Why?')).toBeTruthy();
|
|
35
|
-
});
|
|
36
|
-
it('should render different submit button text correctly', () => {
|
|
37
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, submitWord: "Give feedback" }));
|
|
38
|
-
expect(screen.getByRole('button', { name: /Give feedback/i })).toBeTruthy();
|
|
39
|
-
});
|
|
40
|
-
it('should render text area correctly', () => {
|
|
41
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, hasTextArea: true }));
|
|
42
|
-
expect(screen.getByRole('textbox', { name: /Provide optional additional feedback/i })).toBeTruthy();
|
|
43
|
-
});
|
|
44
|
-
it('should call onTextAreaChange correctly', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
-
const spy = jest.fn();
|
|
46
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, hasTextArea: true, onTextAreaChange: spy }));
|
|
47
|
-
const textbox = screen.getByRole('textbox', { name: /Provide optional additional feedback/i });
|
|
48
|
-
yield userEvent.type(textbox, 'test');
|
|
49
|
-
expect(spy).toHaveBeenCalledTimes(4);
|
|
50
|
-
}));
|
|
51
|
-
it('should render different placeholder correctly', () => {
|
|
52
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, hasTextArea: true, textAreaPlaceholder: "Provide any other information" }));
|
|
53
|
-
expect(screen.getByRole('textbox', { name: /Provide optional additional feedback/i })).toHaveAttribute('placeholder', 'Provide any other information');
|
|
54
|
-
});
|
|
55
|
-
it('should render different text area label correctly', () => {
|
|
56
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, hasTextArea: true, textAreaAriaLabel: "Provide more details" }));
|
|
57
|
-
expect(screen.getByRole('textbox', { name: /Provide more details/i })).toBeTruthy();
|
|
58
|
-
});
|
|
59
|
-
it('should handle onClose correctly when close button is clicked', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
60
|
-
const spy = jest.fn();
|
|
61
|
-
render(_jsx(UserFeedback, { onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, onClose: spy, timestamp: "12/12/12" }));
|
|
62
|
-
const closeButton = screen.getByRole('button', { name: 'Close feedback for message received at 12/12/12' });
|
|
63
|
-
expect(closeButton).toBeTruthy();
|
|
64
|
-
yield userEvent.click(closeButton);
|
|
65
|
-
expect(spy).toHaveBeenCalledTimes(1);
|
|
66
|
-
}));
|
|
67
|
-
it('should be able to change close button aria label', () => {
|
|
68
|
-
const spy = jest.fn();
|
|
69
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, onClose: spy, closeButtonAriaLabel: "Ima button" }));
|
|
70
|
-
expect(screen.getByRole('button', { name: /Ima button/i })).toBeTruthy();
|
|
71
|
-
});
|
|
72
|
-
it('should handle className', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
73
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, className: "test", "data-testid": "card" }));
|
|
74
|
-
expect(screen.getByTestId('card')).toHaveClass('test');
|
|
75
|
-
}));
|
|
76
|
-
it('should apply id', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
77
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, id: "test", "data-testid": "card" }));
|
|
78
|
-
expect(screen.getByTestId('card').parentElement).toHaveAttribute('id', 'test');
|
|
79
|
-
}));
|
|
80
|
-
it('should handle submit correctly when nothing is selected', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
81
|
-
const spy = jest.fn();
|
|
82
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: spy, quickResponses: MOCK_RESPONSES }));
|
|
83
|
-
yield userEvent.click(screen.getByRole('button', { name: /Submit/i }));
|
|
84
|
-
expect(spy).toHaveBeenCalledTimes(1);
|
|
85
|
-
expect(spy).toHaveBeenCalledWith(undefined, '');
|
|
86
|
-
}));
|
|
87
|
-
it('should handle submit correctly when item is selected', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
88
|
-
const spy = jest.fn();
|
|
89
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: spy, quickResponses: MOCK_RESPONSES }));
|
|
90
|
-
yield userEvent.click(screen.getByRole('button', { name: /Easy to understand/i }));
|
|
91
|
-
yield userEvent.click(screen.getByRole('button', { name: /Submit/i }));
|
|
92
|
-
expect(spy).toHaveBeenCalledTimes(1);
|
|
93
|
-
expect(spy).toHaveBeenCalledWith('2', '');
|
|
94
|
-
}));
|
|
95
|
-
it('should handle submit correctly when there is just text input', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
96
|
-
const spy = jest.fn();
|
|
97
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: spy, quickResponses: MOCK_RESPONSES, hasTextArea: true }));
|
|
98
|
-
yield userEvent.type(screen.getByRole('textbox', { name: /Provide optional additional feedback/i }), 'What a great experience!');
|
|
99
|
-
yield userEvent.click(screen.getByRole('button', { name: /Submit/i }));
|
|
100
|
-
expect(spy).toHaveBeenCalledTimes(1);
|
|
101
|
-
expect(spy).toHaveBeenCalledWith(undefined, 'What a great experience!');
|
|
102
|
-
}));
|
|
103
|
-
it('should handle submit correctly when item is selected and there is text input', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
104
|
-
const spy = jest.fn();
|
|
105
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: spy, quickResponses: MOCK_RESPONSES, hasTextArea: true }));
|
|
106
|
-
yield userEvent.click(screen.getByRole('button', { name: /Easy to understand/i }));
|
|
107
|
-
yield userEvent.type(screen.getByRole('textbox', { name: /Provide optional additional feedback/i }), 'What a great experience!');
|
|
108
|
-
yield userEvent.click(screen.getByRole('button', { name: /Submit/i }));
|
|
109
|
-
expect(spy).toHaveBeenCalledTimes(1);
|
|
110
|
-
expect(spy).toHaveBeenCalledWith('2', 'What a great experience!');
|
|
111
|
-
}));
|
|
112
|
-
it('should default title heading level to h1', () => {
|
|
113
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES }));
|
|
114
|
-
expect(screen.getByRole('heading', { level: 1, name: /Why did you choose this rating?/i })).toBeTruthy();
|
|
115
|
-
});
|
|
116
|
-
it('should be able to change title heading level', () => {
|
|
117
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, headingLevel: "h6" }));
|
|
118
|
-
expect(screen.getByRole('heading', { level: 6, name: /Why did you choose this rating?/i })).toBeTruthy();
|
|
119
|
-
});
|
|
120
|
-
it('should focus on load by default', () => {
|
|
121
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, "data-testid": "card" }));
|
|
122
|
-
expect(screen.getByTestId('card').parentElement).toHaveFocus();
|
|
123
|
-
});
|
|
124
|
-
it('should not focus on load if focusOnLoad = false', () => {
|
|
125
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, "data-testid": "card", focusOnLoad: false }));
|
|
126
|
-
expect(screen.getByTestId('card').parentElement).not.toHaveFocus();
|
|
127
|
-
});
|
|
128
|
-
it('should handle isCompact', () => {
|
|
129
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, "data-testid": "card", isCompact: true }));
|
|
130
|
-
expect(screen.getByTestId('card')).toHaveClass('pf-m-compact');
|
|
131
|
-
});
|
|
132
|
-
it('should pass buttonProps to submit button', () => {
|
|
133
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, submitButtonProps: { variant: 'secondary', isDisabled: true } }));
|
|
134
|
-
const submitButton = screen.getByRole('button', { name: /Submit/i });
|
|
135
|
-
expect(submitButton).toHaveClass('pf-v6-c-button pf-m-secondary');
|
|
136
|
-
expect(submitButton).toBeDisabled();
|
|
137
|
-
});
|
|
138
|
-
it('should pass cardHeaderProps to card header', () => {
|
|
139
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, cardHeaderProps: { 'data-testid': 'card-header', className: 'custom-header' } }));
|
|
140
|
-
const cardHeader = screen.getByTestId('card-header');
|
|
141
|
-
expect(cardHeader).toHaveClass('custom-header');
|
|
142
|
-
});
|
|
143
|
-
it('should pass cardBodyProps to card body', () => {
|
|
144
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, cardBodyProps: { 'data-testid': 'card-body', className: 'custom-body' } }));
|
|
145
|
-
const cardBody = screen.getByTestId('card-body');
|
|
146
|
-
expect(cardBody).toHaveClass('custom-body');
|
|
147
|
-
});
|
|
148
|
-
it('should pass headingLevelProps to title heading', () => {
|
|
149
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, headingLevelProps: { className: 'custom-heading', id: 'feedback-title' } }));
|
|
150
|
-
const heading = screen.getByRole('heading', { level: 1, name: /Why did you choose this rating?/i });
|
|
151
|
-
expect(heading).toHaveClass('custom-heading');
|
|
152
|
-
expect(heading).toHaveAttribute('id', 'feedback-title');
|
|
153
|
-
});
|
|
154
|
-
it('should pass formProps to form', () => {
|
|
155
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, formProps: { 'data-testid': 'feedback-form', className: 'custom-form' } }));
|
|
156
|
-
const form = screen.getByTestId('feedback-form');
|
|
157
|
-
expect(form).toHaveClass('custom-form');
|
|
158
|
-
});
|
|
159
|
-
it('should pass textAreaProps to text area when hasTextArea is true', () => {
|
|
160
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, hasTextArea: true, textAreaProps: { 'data-testid': 'custom-textarea', rows: 5 } }));
|
|
161
|
-
const textArea = screen.getByTestId('custom-textarea');
|
|
162
|
-
expect(textArea).toHaveAttribute('rows', '5');
|
|
163
|
-
expect(textArea).toHaveAttribute('data-testid', 'custom-textarea');
|
|
164
|
-
});
|
|
165
|
-
it('should pass actionGroupProps to action group', () => {
|
|
166
|
-
render(_jsx(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, actionGroupProps: { 'data-testid': 'action-group', className: 'custom-actions' } }));
|
|
167
|
-
const actionGroup = screen.getByTestId('action-group');
|
|
168
|
-
expect(actionGroup).toHaveClass('custom-actions');
|
|
169
|
-
});
|
|
170
|
-
it('should render children', () => {
|
|
171
|
-
render(_jsxs(UserFeedback, { timestamp: "12/12/12", onClose: jest.fn, onSubmit: jest.fn, quickResponses: MOCK_RESPONSES, children: [_jsx("div", { "data-testid": "custom-content", children: "Custom feedback content" }), _jsx("p", { children: "Additional paragraph" })] }));
|
|
172
|
-
expect(screen.getByTestId('custom-content')).toBeInTheDocument();
|
|
173
|
-
expect(screen.getByText('Custom feedback content')).toBeInTheDocument();
|
|
174
|
-
expect(screen.getByText('Additional paragraph')).toBeInTheDocument();
|
|
175
|
-
});
|
|
176
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import '@testing-library/jest-dom';
|