@patternfly/chatbot 6.8.0-prerelease.5 → 6.8.0-prerelease.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/cjs/FileDetailsLabel/FileDetailsLabel.js +1 -1
  2. package/dist/cjs/ImagePreview/ImagePreview.js +1 -1
  3. package/dist/cjs/Message/CodeBlockMessage/CodeBlockMessage.js +1 -2
  4. package/dist/cjs/Message/Message.test.js +1 -1
  5. package/dist/cjs/Message/QuickResponse/QuickResponse.js +1 -1
  6. package/dist/cjs/Message/QuickStarts/QuickStartTile.js +4 -6
  7. package/dist/cjs/MessageBar/AttachButton.js +2 -2
  8. package/dist/cjs/MessageBar/MicrophoneButton.js +2 -4
  9. package/dist/cjs/MessageBox/JumpButton.js +2 -4
  10. package/dist/esm/FileDetailsLabel/FileDetailsLabel.js +2 -2
  11. package/dist/esm/ImagePreview/ImagePreview.js +2 -2
  12. package/dist/esm/Message/CodeBlockMessage/CodeBlockMessage.js +2 -3
  13. package/dist/esm/Message/Message.test.js +1 -1
  14. package/dist/esm/Message/QuickResponse/QuickResponse.js +2 -2
  15. package/dist/esm/Message/QuickStarts/QuickStartTile.js +4 -6
  16. package/dist/esm/MessageBar/AttachButton.js +2 -2
  17. package/dist/esm/MessageBar/MicrophoneButton.js +2 -4
  18. package/dist/esm/MessageBox/JumpButton.js +2 -4
  19. package/package.json +2 -6
  20. package/patternfly-docs/content/extensions/chatbot/examples/Messages/explore-pipeline-quickstart.ts +0 -3
  21. package/src/FileDetailsLabel/FileDetailsLabel.tsx +2 -2
  22. package/src/ImagePreview/ImagePreview.tsx +6 -2
  23. package/src/Message/CodeBlockMessage/CodeBlockMessage.tsx +2 -3
  24. package/src/Message/Message.test.tsx +6 -1
  25. package/src/Message/QuickResponse/QuickResponse.tsx +2 -2
  26. package/src/Message/QuickStarts/QuickStartTile.tsx +9 -6
  27. package/src/MessageBar/AttachButton.tsx +2 -2
  28. package/src/MessageBar/MicrophoneButton.tsx +2 -7
  29. package/src/MessageBox/JumpButton.tsx +2 -6
  30. package/src/index.ts +0 -3
@@ -21,7 +21,7 @@ const FileDetails_1 = __importDefault(require("../FileDetails"));
21
21
  const react_core_2 = require("@patternfly/react-core");
22
22
  const react_icons_1 = require("@patternfly/react-icons");
23
23
  const FileDetailsLabel = (_a) => {
24
- var { fileName, fileId, isLoading, onClick, onClose, closeButtonAriaLabel, languageTestId, spinnerTestId, fileSize, hasTruncation = true, closeButtonIcon = (0, jsx_runtime_1.jsx)(react_icons_1.TimesIcon, {}) } = _a, props = __rest(_a, ["fileName", "fileId", "isLoading", "onClick", "onClose", "closeButtonAriaLabel", "languageTestId", "spinnerTestId", "fileSize", "hasTruncation", "closeButtonIcon"]);
24
+ var { fileName, fileId, isLoading, onClick, onClose, closeButtonAriaLabel, languageTestId, spinnerTestId, fileSize, hasTruncation = true, closeButtonIcon = (0, jsx_runtime_1.jsx)(react_icons_1.RhMicronsCloseIcon, {}) } = _a, props = __rest(_a, ["fileName", "fileId", "isLoading", "onClick", "onClose", "closeButtonAriaLabel", "languageTestId", "spinnerTestId", "fileSize", "hasTruncation", "closeButtonIcon"]);
25
25
  const handleClose = (event) => {
26
26
  onClose && onClose(event, fileName, fileId);
27
27
  };
@@ -34,7 +34,7 @@ const ImagePreview = (_a) => {
34
34
  setPage(newPage);
35
35
  onSetPage && onSetPage(_evt, newPage);
36
36
  };
37
- return ((0, jsx_runtime_1.jsxs)(ChatbotModal_1.default, Object.assign({ isOpen: isModalOpen, className: `pf-chatbot__image-preview-modal pf-chatbot__image-preview-modal--${displayMode} ${isCompact ? 'pf-m-compact' : ''} ${className ? className : ''}`, displayMode: displayMode, onClose: handleModalToggle, isCompact: isCompact }, props, { children: [(0, jsx_runtime_1.jsx)(react_core_1.ModalHeader, Object.assign({ title: title }, modalHeaderProps)), (0, jsx_runtime_1.jsx)(react_core_1.ModalBody, Object.assign({ className: "pf-chatbot__image-preview-body" }, modalBodyProps, { children: images.length > 0 && images[page - 1] && ((0, jsx_runtime_1.jsxs)(react_core_1.Stack, { hasGutter: true, className: "pf-chatbot__image-preview-stack", children: [(0, jsx_runtime_1.jsx)(react_core_1.StackItem, { children: (0, jsx_runtime_1.jsx)(FileDetailsLabel_1.default, Object.assign({ fileName: images[page - 1].fileName, fileSize: images[page - 1].fileSize, hasTruncation: false, onClose: onCloseFileDetailsLabel, closeButtonIcon: (0, jsx_runtime_1.jsx)(react_icons_1.TrashIcon, {}) }, fileDetailsLabelProps)) }), (0, jsx_runtime_1.jsx)(react_core_1.StackItem, { children: (0, jsx_runtime_1.jsx)("div", { className: "pf-chatbot__image-preview-body", children: images[page - 1].image }) })] })) })), images.length > 1 && ((0, jsx_runtime_1.jsx)(react_core_1.ModalFooter, { className: "pf-chatbot__image-preview-footer", children: (0, jsx_runtime_1.jsxs)("nav", { className: `pf-chatbot__image-preview-footer-buttons`, "aria-label": paginationAriaLabel, children: [(0, jsx_runtime_1.jsx)(react_core_1.Button, { variant: react_core_1.ButtonVariant.plain, isDisabled: isDisabled || page === 1, "data-action": "previous", onClick: (event) => {
37
+ return ((0, jsx_runtime_1.jsxs)(ChatbotModal_1.default, Object.assign({ isOpen: isModalOpen, className: `pf-chatbot__image-preview-modal pf-chatbot__image-preview-modal--${displayMode} ${isCompact ? 'pf-m-compact' : ''} ${className ? className : ''}`, displayMode: displayMode, onClose: handleModalToggle, isCompact: isCompact }, props, { children: [(0, jsx_runtime_1.jsx)(react_core_1.ModalHeader, Object.assign({ title: title }, modalHeaderProps)), (0, jsx_runtime_1.jsx)(react_core_1.ModalBody, Object.assign({ className: "pf-chatbot__image-preview-body" }, modalBodyProps, { children: images.length > 0 && images[page - 1] && ((0, jsx_runtime_1.jsxs)(react_core_1.Stack, { hasGutter: true, className: "pf-chatbot__image-preview-stack", children: [(0, jsx_runtime_1.jsx)(react_core_1.StackItem, { children: (0, jsx_runtime_1.jsx)(FileDetailsLabel_1.default, Object.assign({ fileName: images[page - 1].fileName, fileSize: images[page - 1].fileSize, hasTruncation: false, onClose: onCloseFileDetailsLabel, closeButtonIcon: (0, jsx_runtime_1.jsx)(react_core_1.Icon, { size: "md", children: (0, jsx_runtime_1.jsx)(react_icons_1.RhUiTrashFillIcon, {}) }) }, fileDetailsLabelProps)) }), (0, jsx_runtime_1.jsx)(react_core_1.StackItem, { children: (0, jsx_runtime_1.jsx)("div", { className: "pf-chatbot__image-preview-body", children: images[page - 1].image }) })] })) })), images.length > 1 && ((0, jsx_runtime_1.jsx)(react_core_1.ModalFooter, { className: "pf-chatbot__image-preview-footer", children: (0, jsx_runtime_1.jsxs)("nav", { className: `pf-chatbot__image-preview-footer-buttons`, "aria-label": paginationAriaLabel, children: [(0, jsx_runtime_1.jsx)(react_core_1.Button, { variant: react_core_1.ButtonVariant.plain, isDisabled: isDisabled || page === 1, "data-action": "previous", onClick: (event) => {
38
38
  const newPage = page > 1 ? page - 1 : 1;
39
39
  handleNewPage(event, newPage);
40
40
  onPreviousClick && onPreviousClick(event, newPage);
@@ -18,7 +18,6 @@ const jsx_runtime_1 = require("react/jsx-runtime");
18
18
  const react_1 = require("react");
19
19
  // Import PatternFly components
20
20
  const react_core_1 = require("@patternfly/react-core");
21
- const check_icon_1 = require("@patternfly/react-icons/dist/esm/icons/check-icon");
22
21
  const react_styles_1 = require("@patternfly/react-styles");
23
22
  const react_icons_1 = require("@patternfly/react-icons");
24
23
  const DEFAULT_EXPANDED_TEXT = 'Show less';
@@ -75,7 +74,7 @@ const CodeBlockMessage = (_a) => {
75
74
  return ((0, jsx_runtime_1.jsx)("code", Object.assign({}, props, { className: `pf-chatbot__message-inline-code ${isPrimary ? 'pf-m-primary' : ''}`, children: children })));
76
75
  }
77
76
  // Setup code block header
78
- const actions = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(react_core_1.CodeBlockAction, { className: "pf-chatbot__message-code-block-default-action", children: [language && (0, jsx_runtime_1.jsx)("div", { className: "pf-chatbot__message-code-block-language", children: language }), (0, jsx_runtime_1.jsx)(react_core_1.Button, { ref: buttonRef, "aria-label": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : 'Copy code', variant: "plain", className: "pf-chatbot__button--copy", onClick: (event) => handleCopy(event, children), children: copied ? (0, jsx_runtime_1.jsx)(check_icon_1.CheckIcon, {}) : (0, jsx_runtime_1.jsx)(react_icons_1.RhUiCopyFillIcon, {}) }), (0, jsx_runtime_1.jsx)(react_core_1.Tooltip, { id: tooltipID, content: "Copy", position: "top", triggerRef: buttonRef })] }), customActions] }));
77
+ const actions = ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(react_core_1.CodeBlockAction, { className: "pf-chatbot__message-code-block-default-action", children: [language && (0, jsx_runtime_1.jsx)("div", { className: "pf-chatbot__message-code-block-language", children: language }), (0, jsx_runtime_1.jsx)(react_core_1.Button, { ref: buttonRef, "aria-label": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : 'Copy code', variant: "plain", className: "pf-chatbot__button--copy", onClick: (event) => handleCopy(event, children), children: copied ? (0, jsx_runtime_1.jsx)(react_icons_1.RhMicronsCheckmarkIcon, {}) : (0, jsx_runtime_1.jsx)(react_icons_1.RhUiCopyFillIcon, {}) }), (0, jsx_runtime_1.jsx)(react_core_1.Tooltip, { id: tooltipID, content: "Copy", position: "top", triggerRef: buttonRef })] }), customActions] }));
79
78
  return ((0, jsx_runtime_1.jsx)("div", { className: (0, react_styles_1.css)('pf-chatbot__message-code-block', shouldRetainStyles && 'pf-m-markdown'), ref: codeBlockRef, children: (0, jsx_runtime_1.jsxs)(react_core_1.CodeBlock, { actions: actions, children: [(0, jsx_runtime_1.jsx)(react_core_1.CodeBlockCode, { children: (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: isExpandable ? ((0, jsx_runtime_1.jsx)(react_core_1.ExpandableSection, Object.assign({ variant: react_core_1.ExpandableSectionVariant.truncate, isExpanded: isExpanded, isDetached: true, toggleId: toggleId, contentId: contentId }, expandableSectionProps, { children: children }))) : (children) }) }), isExpandable && ((0, jsx_runtime_1.jsx)(react_core_1.ExpandableSectionToggle, Object.assign({ isExpanded: isExpanded, onToggle: onToggle, direction: "up", toggleId: toggleId, contentId: contentId, hasTruncatedContent: true, className: "pf-chatbot__message-code-toggle" }, expandableSectionToggleProps, { children: isExpanded ? finalExpandedText : finalCollapsedText })))] }) }));
80
79
  };
81
80
  exports.default = CodeBlockMessage;
@@ -23,7 +23,7 @@ const monitor_sampleapp_quickstart_with_image_1 = require("./QuickStarts/monitor
23
23
  const rehype_external_links_1 = __importDefault(require("../__mocks__/rehype-external-links"));
24
24
  const react_core_1 = require("@patternfly/react-core");
25
25
  // Mock the icon components
26
- jest.mock('@patternfly/react-icons', () => (Object.assign(Object.assign({}, jest.requireActual('@patternfly/react-icons')), { RhUiLikeIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiLikeIcon" }), RhUiLikeFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiLikeFillIcon" }), RhUiDislikeIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiDislikeIcon" }), RhUiDislikeFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiDislikeFillIcon" }), RhUiCopyIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiCopyIcon" }), RhUiCopyFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiCopyFillIcon" }), RhUiEditIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiEditIcon" }), RhUiEditFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiEditFillIcon" }), RhUiVolumeUpIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiVolumeUpIcon" }), RhUiVolumeUpFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiVolumeUpFillIcon" }), RhUiExportIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiExportIcon" }), RhUiExportFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiExportFillIcon" }), RhMicronsInformationFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhMicronsInformationFillIcon" }), RhUiBackwardsIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiBackwardsIcon" }), RhMicronsExternalLinkIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhMicronsExternalLinkIcon" }) })));
26
+ jest.mock('@patternfly/react-icons', () => (Object.assign(Object.assign({}, jest.requireActual('@patternfly/react-icons')), { RhUiLikeIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiLikeIcon" }), RhUiLikeFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiLikeFillIcon" }), RhUiDislikeIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiDislikeIcon" }), RhUiDislikeFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiDislikeFillIcon" }), RhUiCopyIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiCopyIcon" }), RhUiCopyFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiCopyFillIcon" }), RhUiEditIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiEditIcon" }), RhUiEditFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiEditFillIcon" }), RhUiVolumeUpIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiVolumeUpIcon" }), RhUiVolumeUpFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiVolumeUpFillIcon" }), RhUiExportIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiExportIcon" }), RhUiExportFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiExportFillIcon" }), RhMicronsInformationFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhMicronsInformationFillIcon" }), RhUiBackwardsIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiBackwardsIcon" }), RhMicronsExternalLinkIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhMicronsExternalLinkIcon" }), RhMicronsCheckmarkIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhMicronsCheckmarkIcon" }), RhMicronsCloseIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhMicronsCloseIcon" }), RhUiBookmarkIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiBookmarkIcon" }), RhUiClockIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiClockIcon" }), RhUiRocketFillIcon: () => (0, jsx_runtime_1.jsx)("div", { children: "RhUiRocketFillIcon" }) })));
27
27
  const ALL_ACTIONS = [
28
28
  { label: /Good response/i },
29
29
  { label: /Bad response/i },
@@ -26,7 +26,7 @@ const QuickResponse = ({ quickResponses, quickResponseContainerProps = { numLabe
26
26
  };
27
27
  return ((0, jsx_runtime_1.jsx)(react_core_1.LabelGroup, Object.assign({ className: (0, react_styles_1.css)('pf-chatbot__message-quick-response', quickResponseContainerProps === null || quickResponseContainerProps === void 0 ? void 0 : quickResponseContainerProps.className) }, quickResponseContainerProps, { children: quickResponses.map((_a) => {
28
28
  var { id, onClick, content, className } = _a, props = __rest(_a, ["id", "onClick", "content", "className"]);
29
- return ((0, jsx_runtime_1.jsx)(react_core_1.Label, Object.assign({ variant: id === selectedQuickResponse ? undefined : 'outline', icon: id === selectedQuickResponse ? (0, jsx_runtime_1.jsx)(react_icons_1.CheckIcon, {}) : undefined, color: "blue", onClick: () => handleQuickResponseClick(id, onClick), className: (0, react_styles_1.css)(id === selectedQuickResponse && 'pf-chatbot__message-quick-response--selected', className), isCompact: isCompact }, props, { children: content }), id));
29
+ return ((0, jsx_runtime_1.jsx)(react_core_1.Label, Object.assign({ variant: id === selectedQuickResponse ? undefined : 'outline', icon: id === selectedQuickResponse ? (0, jsx_runtime_1.jsx)(react_icons_1.RhMicronsCheckmarkIcon, {}) : undefined, color: "blue", onClick: () => handleQuickResponseClick(id, onClick), className: (0, react_styles_1.css)(id === selectedQuickResponse && 'pf-chatbot__message-quick-response--selected', className), isCompact: isCompact }, props, { children: content }), id));
30
30
  }) })));
31
31
  };
32
32
  exports.QuickResponse = QuickResponse;
@@ -5,13 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.QuickStartTile = exports.camelize = void 0;
7
7
  const jsx_runtime_1 = require("react/jsx-runtime");
8
- const rocket_icon_1 = __importDefault(require("@patternfly/react-icons/dist/js/icons/rocket-icon"));
9
- const outlined_bookmark_icon_1 = __importDefault(require("@patternfly/react-icons/dist/js/icons/outlined-bookmark-icon"));
10
8
  const react_core_1 = require("@patternfly/react-core");
11
- const outlined_clock_icon_1 = __importDefault(require("@patternfly/react-icons/dist/js/icons/outlined-clock-icon"));
12
9
  const QuickStartTileHeader_1 = __importDefault(require("./QuickStartTileHeader"));
13
10
  const QuickStartTileDescription_1 = __importDefault(require("./QuickStartTileDescription"));
14
11
  const FallbackImg_1 = __importDefault(require("./FallbackImg"));
12
+ const react_icons_1 = require("@patternfly/react-icons");
15
13
  const camelize = (str) => str.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, index) {
16
14
  if (+match === 0) {
17
15
  return '';
@@ -26,7 +24,7 @@ const QuickStartTile = ({ className, quickStart, onClick, onSelectQuickStart, mi
26
24
  quickStartIcon = (0, jsx_runtime_1.jsx)(react_core_1.Icon, { size: "2xl", children: icon });
27
25
  }
28
26
  else {
29
- quickStartIcon = ((0, jsx_runtime_1.jsx)(react_core_1.Icon, { size: "2xl", children: (0, jsx_runtime_1.jsx)(FallbackImg_1.default, { src: icon, alt: "", className: "pfext-catalog-item-icon__img", fallback: (0, jsx_runtime_1.jsx)(rocket_icon_1.default, {}) }) }));
27
+ quickStartIcon = ((0, jsx_runtime_1.jsx)(react_core_1.Icon, { size: "2xl", children: (0, jsx_runtime_1.jsx)(FallbackImg_1.default, { src: icon, alt: "", className: "pfext-catalog-item-icon__img", fallback: (0, jsx_runtime_1.jsx)(react_icons_1.RhUiRocketFillIcon, {}) }) }));
30
28
  }
31
29
  const onSelect = () => {
32
30
  if (!link) {
@@ -37,11 +35,11 @@ const QuickStartTile = ({ className, quickStart, onClick, onSelectQuickStart, mi
37
35
  }
38
36
  onClick && onClick();
39
37
  };
40
- const ActionIcon = (action === null || action === void 0 ? void 0 : action.icon) || outlined_bookmark_icon_1.default;
38
+ const ActionIcon = (action === null || action === void 0 ? void 0 : action.icon) || react_icons_1.RhUiBookmarkIcon;
41
39
  const additionalAction = action ? ((0, jsx_runtime_1.jsx)(react_core_1.Button, Object.assign({ "aria-label": action['aria-label'], icon: (0, jsx_runtime_1.jsx)(ActionIcon, {}), variant: "plain", onClick: action.onClick }, action.buttonProps))) : undefined;
42
40
  return ((0, jsx_runtime_1.jsxs)(react_core_1.Card, { className: `pf-chatbot__quickstarts-tile ${className ? className : ''}`, id: `${id}-chatbot-qs-tile`, style: { height: '100%' }, "data-testid": `chatbot-qs-card-${(0, exports.camelize)(displayName)}`, isCompact: isCompact, children: [(0, jsx_runtime_1.jsx)(react_core_1.CardHeader, Object.assign({}, (action && {
43
41
  actions: { actions: additionalAction }
44
- }), { children: quickStartIcon })), (0, jsx_runtime_1.jsx)(react_core_1.CardTitle, { children: (0, jsx_runtime_1.jsx)(QuickStartTileHeader_1.default, { name: displayName, onSelect: onSelect, quickStartId: id }) }), (0, jsx_runtime_1.jsx)(react_core_1.CardBody, { children: (0, jsx_runtime_1.jsxs)(react_core_1.Stack, { hasGutter: true, children: [(0, jsx_runtime_1.jsxs)(react_core_1.Flex, { spaceItems: { default: 'spaceItemsSm' }, children: [type && (0, jsx_runtime_1.jsx)(react_core_1.Label, { color: type.color, children: type.text }), durationMinutes && ((0, jsx_runtime_1.jsx)(react_core_1.Label, { variant: "outline", "data-test": "duration", icon: (0, jsx_runtime_1.jsx)(outlined_clock_icon_1.default, {}), children: (0, react_core_1.pluralize)(durationMinutes, minuteWord, minuteWordPlural) }))] }), (0, jsx_runtime_1.jsx)(QuickStartTileDescription_1.default, { description: description, prerequisites: prerequisites, prerequisiteWord: prerequisiteWord, prerequisiteWordPlural: prerequisiteWordPlural, quickStartButtonAriaLabel: quickStartButtonAriaLabel })] }) }), (0, jsx_runtime_1.jsx)(react_core_1.CardFooter, { children: (0, jsx_runtime_1.jsx)(react_core_1.Button, { variant: "link", isInline: true, onClick: onSelect, children: (0, jsx_runtime_1.jsx)("span", { className: "pf-v6-c-button__text", children: "Start" }) }) })] }));
42
+ }), { children: quickStartIcon })), (0, jsx_runtime_1.jsx)(react_core_1.CardTitle, { children: (0, jsx_runtime_1.jsx)(QuickStartTileHeader_1.default, { name: displayName, onSelect: onSelect, quickStartId: id }) }), (0, jsx_runtime_1.jsx)(react_core_1.CardBody, { children: (0, jsx_runtime_1.jsxs)(react_core_1.Stack, { hasGutter: true, children: [(0, jsx_runtime_1.jsxs)(react_core_1.Flex, { spaceItems: { default: 'spaceItemsSm' }, children: [type && (0, jsx_runtime_1.jsx)(react_core_1.Label, { color: type.color, children: type.text }), durationMinutes && ((0, jsx_runtime_1.jsx)(react_core_1.Label, { variant: "outline", "data-test": "duration", icon: (0, jsx_runtime_1.jsx)(react_icons_1.RhUiClockIcon, {}), children: (0, react_core_1.pluralize)(durationMinutes, minuteWord, minuteWordPlural) }))] }), (0, jsx_runtime_1.jsx)(QuickStartTileDescription_1.default, { description: description, prerequisites: prerequisites, prerequisiteWord: prerequisiteWord, prerequisiteWordPlural: prerequisiteWordPlural, quickStartButtonAriaLabel: quickStartButtonAriaLabel })] }) }), (0, jsx_runtime_1.jsx)(react_core_1.CardFooter, { children: (0, jsx_runtime_1.jsx)(react_core_1.Button, { variant: "link", isInline: true, onClick: onSelect, children: (0, jsx_runtime_1.jsx)("span", { className: "pf-v6-c-button__text", children: "Start" }) }) })] }));
45
43
  };
46
44
  exports.QuickStartTile = QuickStartTile;
47
45
  exports.default = exports.QuickStartTile;
@@ -17,9 +17,9 @@ const react_1 = require("react");
17
17
  // Import PatternFly components
18
18
  const react_core_1 = require("@patternfly/react-core");
19
19
  const react_dropzone_1 = require("react-dropzone");
20
- const paperclip_icon_1 = require("@patternfly/react-icons/dist/esm/icons/paperclip-icon");
20
+ const react_icons_1 = require("@patternfly/react-icons");
21
21
  const AttachButtonBase = (_a) => {
22
- var { onAttachAccepted, onClick, isDisabled, className, tooltipProps, innerRef, tooltipContent = 'Attach', inputTestId, isCompact, allowedFileTypes, minSize, maxSize, maxFiles, isAttachmentDisabled, onAttach, onAttachRejected, validator, dropzoneProps, icon = (0, jsx_runtime_1.jsx)(paperclip_icon_1.PaperclipIcon, {}) } = _a, props = __rest(_a, ["onAttachAccepted", "onClick", "isDisabled", "className", "tooltipProps", "innerRef", "tooltipContent", "inputTestId", "isCompact", "allowedFileTypes", "minSize", "maxSize", "maxFiles", "isAttachmentDisabled", "onAttach", "onAttachRejected", "validator", "dropzoneProps", "icon"]);
22
+ var { onAttachAccepted, onClick, isDisabled, className, tooltipProps, innerRef, tooltipContent = 'Attach', inputTestId, isCompact, allowedFileTypes, minSize, maxSize, maxFiles, isAttachmentDisabled, onAttach, onAttachRejected, validator, dropzoneProps, icon = (0, jsx_runtime_1.jsx)(react_icons_1.RhUiPaperClipIcon, {}) } = _a, props = __rest(_a, ["onAttachAccepted", "onClick", "isDisabled", "className", "tooltipProps", "innerRef", "tooltipContent", "inputTestId", "isCompact", "allowedFileTypes", "minSize", "maxSize", "maxFiles", "isAttachmentDisabled", "onAttach", "onAttachRejected", "validator", "dropzoneProps", "icon"]);
23
23
  const { open, getInputProps } = (0, react_dropzone_1.useDropzone)(Object.assign({ multiple: true, onDropAccepted: onAttachAccepted, accept: allowedFileTypes, minSize,
24
24
  maxSize,
25
25
  maxFiles, disabled: isAttachmentDisabled, onDrop: onAttach, onDropRejected: onAttachRejected, validator }, dropzoneProps));
@@ -14,10 +14,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.MicrophoneButton = void 0;
15
15
  const jsx_runtime_1 = require("react/jsx-runtime");
16
16
  const react_1 = require("react");
17
- // Import PatternFly components
18
17
  const react_core_1 = require("@patternfly/react-core");
19
- // Import FontAwesome icons
20
- const microphone_icon_1 = require("@patternfly/react-icons/dist/esm/icons/microphone-icon");
18
+ const react_icons_1 = require("@patternfly/react-icons");
21
19
  const MicrophoneButton = (_a) => {
22
20
  var { isListening, onIsListeningChange, onSpeechRecognition, className, tooltipProps, tooltipContent = { active: 'Stop listening', inactive: 'Use microphone' }, language = 'en-US', isCompact } = _a, props = __rest(_a, ["isListening", "onIsListeningChange", "onSpeechRecognition", "className", "tooltipProps", "tooltipContent", "language", "isCompact"]);
23
21
  // Microphone
@@ -63,7 +61,7 @@ const MicrophoneButton = (_a) => {
63
61
  if (!speechRecognition) {
64
62
  return null;
65
63
  }
66
- return ((0, jsx_runtime_1.jsx)(react_core_1.Tooltip, Object.assign({ aria: "none", "aria-live": "polite", id: "pf-chatbot__tooltip--use-microphone", content: isListening ? tooltipContent.active : tooltipContent.inactive, position: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.position) || 'top', entryDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.entryDelay) || 0, exitDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.exitDelay) || 0, distance: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.distance) || 8, animationDuration: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.animationDuration) || 0 }, tooltipProps, { children: (0, jsx_runtime_1.jsx)(react_core_1.Button, Object.assign({ variant: "plain", className: `pf-chatbot__button--microphone ${isListening ? 'pf-chatbot__button--microphone--active' : ''} ${isCompact ? 'pf-m-compact' : ''} ${className !== null && className !== void 0 ? className : ''}`, "aria-label": props['aria-label'] || (isListening ? 'Stop listening' : 'Use microphone'), "aria-pressed": isListening, onClick: isListening ? stopListening : startListening, icon: (0, jsx_runtime_1.jsx)(react_core_1.Icon, { iconSize: isCompact ? 'lg' : 'xl', isInline: true, children: (0, jsx_runtime_1.jsx)(microphone_icon_1.MicrophoneIcon, {}) }), size: isCompact ? 'sm' : undefined }, props)) })));
64
+ return ((0, jsx_runtime_1.jsx)(react_core_1.Tooltip, Object.assign({ aria: "none", "aria-live": "polite", id: "pf-chatbot__tooltip--use-microphone", content: isListening ? tooltipContent.active : tooltipContent.inactive, position: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.position) || 'top', entryDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.entryDelay) || 0, exitDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.exitDelay) || 0, distance: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.distance) || 8, animationDuration: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.animationDuration) || 0 }, tooltipProps, { children: (0, jsx_runtime_1.jsx)(react_core_1.Button, Object.assign({ variant: "plain", className: `pf-chatbot__button--microphone ${isListening ? 'pf-chatbot__button--microphone--active' : ''} ${isCompact ? 'pf-m-compact' : ''} ${className !== null && className !== void 0 ? className : ''}`, "aria-label": props['aria-label'] || (isListening ? 'Stop listening' : 'Use microphone'), "aria-pressed": isListening, onClick: isListening ? stopListening : startListening, icon: (0, jsx_runtime_1.jsx)(react_core_1.Icon, { iconSize: isCompact ? 'lg' : 'xl', isInline: true, children: (0, jsx_runtime_1.jsx)(react_icons_1.RhUiMicrophoneFillIcon, {}) }), size: isCompact ? 'sm' : undefined }, props)) })));
67
65
  };
68
66
  exports.MicrophoneButton = MicrophoneButton;
69
67
  exports.default = exports.MicrophoneButton;
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const jsx_runtime_1 = require("react/jsx-runtime");
4
- // Import PatternFly components
5
4
  const react_core_1 = require("@patternfly/react-core");
6
- const arrow_up_icon_1 = require("@patternfly/react-icons/dist/esm/icons/arrow-up-icon");
7
- const arrow_down_icon_1 = require("@patternfly/react-icons/dist/esm/icons/arrow-down-icon");
8
- const JumpButton = ({ position, isHidden, onClick, jumpButtonProps, jumpButtonTooltipProps }) => isHidden ? null : ((0, jsx_runtime_1.jsx)(react_core_1.Tooltip, Object.assign({ id: `pf-chatbot__tooltip--jump-${position}`, content: `Back to ${position}`, position: "top" }, jumpButtonTooltipProps, { children: (0, jsx_runtime_1.jsx)(react_core_1.Button, Object.assign({ variant: "plain", className: `pf-chatbot__jump pf-chatbot__jump--${position}`, "aria-label": `Back to ${position}`, onClick: onClick }, jumpButtonProps, { children: (0, jsx_runtime_1.jsx)(react_core_1.Icon, { iconSize: "lg", isInline: true, children: position === 'top' ? (0, jsx_runtime_1.jsx)(arrow_up_icon_1.ArrowUpIcon, {}) : (0, jsx_runtime_1.jsx)(arrow_down_icon_1.ArrowDownIcon, {}) }) })) })));
5
+ const react_icons_1 = require("@patternfly/react-icons");
6
+ const JumpButton = ({ position, isHidden, onClick, jumpButtonProps, jumpButtonTooltipProps }) => isHidden ? null : ((0, jsx_runtime_1.jsx)(react_core_1.Tooltip, Object.assign({ id: `pf-chatbot__tooltip--jump-${position}`, content: `Back to ${position}`, position: "top" }, jumpButtonTooltipProps, { children: (0, jsx_runtime_1.jsx)(react_core_1.Button, Object.assign({ variant: "plain", className: `pf-chatbot__jump pf-chatbot__jump--${position}`, "aria-label": `Back to ${position}`, onClick: onClick }, jumpButtonProps, { children: (0, jsx_runtime_1.jsx)(react_core_1.Icon, { iconSize: "lg", isInline: true, children: position === 'top' ? (0, jsx_runtime_1.jsx)(react_icons_1.RhMicronsArrowUpIcon, {}) : (0, jsx_runtime_1.jsx)(react_icons_1.RhMicronsArrowDownIcon, {}) }) })) })));
9
7
  exports.default = JumpButton;
@@ -13,9 +13,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
13
  import { Button, Label } from '@patternfly/react-core';
14
14
  import FileDetails from '../FileDetails';
15
15
  import { Spinner } from '@patternfly/react-core';
16
- import { TimesIcon } from '@patternfly/react-icons';
16
+ import { RhMicronsCloseIcon } from '@patternfly/react-icons';
17
17
  export const FileDetailsLabel = (_a) => {
18
- var { fileName, fileId, isLoading, onClick, onClose, closeButtonAriaLabel, languageTestId, spinnerTestId, fileSize, hasTruncation = true, closeButtonIcon = _jsx(TimesIcon, {}) } = _a, props = __rest(_a, ["fileName", "fileId", "isLoading", "onClick", "onClose", "closeButtonAriaLabel", "languageTestId", "spinnerTestId", "fileSize", "hasTruncation", "closeButtonIcon"]);
18
+ var { fileName, fileId, isLoading, onClick, onClose, closeButtonAriaLabel, languageTestId, spinnerTestId, fileSize, hasTruncation = true, closeButtonIcon = _jsx(RhMicronsCloseIcon, {}) } = _a, props = __rest(_a, ["fileName", "fileId", "isLoading", "onClick", "onClose", "closeButtonAriaLabel", "languageTestId", "spinnerTestId", "fileSize", "hasTruncation", "closeButtonIcon"]);
19
19
  const handleClose = (event) => {
20
20
  onClose && onClose(event, fileName, fileId);
21
21
  };
@@ -15,7 +15,7 @@ import { useState, useEffect } from 'react';
15
15
  import { ChatbotDisplayMode } from '../Chatbot';
16
16
  import ChatbotModal from '../ChatbotModal';
17
17
  import FileDetailsLabel from '../FileDetailsLabel';
18
- import { TrashIcon } from '@patternfly/react-icons';
18
+ import { RhUiTrashFillIcon } from '@patternfly/react-icons';
19
19
  const ImagePreview = (_a) => {
20
20
  var { isModalOpen, displayMode = ChatbotDisplayMode.default, isCompact, className, handleModalToggle, title = 'Preview images', modalHeaderProps, modalBodyProps, images, isDisabled, onSetPage, onPreviousClick, toNextPageAriaLabel = 'Go to next image', toPreviousPageAriaLabel = 'Go to previous image', onNextClick, paginationAriaLabel, onCloseFileDetailsLabel, fileDetailsLabelProps, paginationContent, screenreaderText } = _a, props = __rest(_a, ["isModalOpen", "displayMode", "isCompact", "className", "handleModalToggle", "title", "modalHeaderProps", "modalBodyProps", "images", "isDisabled", "onSetPage", "onPreviousClick", "toNextPageAriaLabel", "toPreviousPageAriaLabel", "onNextClick", "paginationAriaLabel", "onCloseFileDetailsLabel", "fileDetailsLabelProps", "paginationContent", "screenreaderText"]);
21
21
  const [page, setPage] = useState(1);
@@ -29,7 +29,7 @@ const ImagePreview = (_a) => {
29
29
  setPage(newPage);
30
30
  onSetPage && onSetPage(_evt, newPage);
31
31
  };
32
- return (_jsxs(ChatbotModal, Object.assign({ isOpen: isModalOpen, className: `pf-chatbot__image-preview-modal pf-chatbot__image-preview-modal--${displayMode} ${isCompact ? 'pf-m-compact' : ''} ${className ? className : ''}`, displayMode: displayMode, onClose: handleModalToggle, isCompact: isCompact }, props, { children: [_jsx(ModalHeader, Object.assign({ title: title }, modalHeaderProps)), _jsx(ModalBody, Object.assign({ className: "pf-chatbot__image-preview-body" }, modalBodyProps, { children: images.length > 0 && images[page - 1] && (_jsxs(Stack, { hasGutter: true, className: "pf-chatbot__image-preview-stack", children: [_jsx(StackItem, { children: _jsx(FileDetailsLabel, Object.assign({ fileName: images[page - 1].fileName, fileSize: images[page - 1].fileSize, hasTruncation: false, onClose: onCloseFileDetailsLabel, closeButtonIcon: _jsx(TrashIcon, {}) }, fileDetailsLabelProps)) }), _jsx(StackItem, { children: _jsx("div", { className: "pf-chatbot__image-preview-body", children: images[page - 1].image }) })] })) })), images.length > 1 && (_jsx(ModalFooter, { className: "pf-chatbot__image-preview-footer", children: _jsxs("nav", { className: `pf-chatbot__image-preview-footer-buttons`, "aria-label": paginationAriaLabel, children: [_jsx(Button, { variant: ButtonVariant.plain, isDisabled: isDisabled || page === 1, "data-action": "previous", onClick: (event) => {
32
+ return (_jsxs(ChatbotModal, Object.assign({ isOpen: isModalOpen, className: `pf-chatbot__image-preview-modal pf-chatbot__image-preview-modal--${displayMode} ${isCompact ? 'pf-m-compact' : ''} ${className ? className : ''}`, displayMode: displayMode, onClose: handleModalToggle, isCompact: isCompact }, props, { children: [_jsx(ModalHeader, Object.assign({ title: title }, modalHeaderProps)), _jsx(ModalBody, Object.assign({ className: "pf-chatbot__image-preview-body" }, modalBodyProps, { children: images.length > 0 && images[page - 1] && (_jsxs(Stack, { hasGutter: true, className: "pf-chatbot__image-preview-stack", children: [_jsx(StackItem, { children: _jsx(FileDetailsLabel, Object.assign({ fileName: images[page - 1].fileName, fileSize: images[page - 1].fileSize, hasTruncation: false, onClose: onCloseFileDetailsLabel, closeButtonIcon: _jsx(Icon, { size: "md", children: _jsx(RhUiTrashFillIcon, {}) }) }, fileDetailsLabelProps)) }), _jsx(StackItem, { children: _jsx("div", { className: "pf-chatbot__image-preview-body", children: images[page - 1].image }) })] })) })), images.length > 1 && (_jsx(ModalFooter, { className: "pf-chatbot__image-preview-footer", children: _jsxs("nav", { className: `pf-chatbot__image-preview-footer-buttons`, "aria-label": paginationAriaLabel, children: [_jsx(Button, { variant: ButtonVariant.plain, isDisabled: isDisabled || page === 1, "data-action": "previous", onClick: (event) => {
33
33
  const newPage = page > 1 ? page - 1 : 1;
34
34
  handleNewPage(event, newPage);
35
35
  onPreviousClick && onPreviousClick(event, newPage);
@@ -16,9 +16,8 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
16
16
  import { useState, useRef, useCallback, useEffect } from 'react';
17
17
  // Import PatternFly components
18
18
  import { CodeBlock, CodeBlockAction, CodeBlockCode, Button, Tooltip, ExpandableSection, ExpandableSectionToggle, ExpandableSectionVariant, getUniqueId } from '@patternfly/react-core';
19
- import { CheckIcon } from '@patternfly/react-icons/dist/esm/icons/check-icon';
20
19
  import { css } from '@patternfly/react-styles';
21
- import { RhUiCopyFillIcon } from '@patternfly/react-icons';
20
+ import { RhMicronsCheckmarkIcon, RhUiCopyFillIcon } from '@patternfly/react-icons';
22
21
  const DEFAULT_EXPANDED_TEXT = 'Show less';
23
22
  const DEFAULT_COLLAPSED_TEXT = 'Show more';
24
23
  const CodeBlockMessage = (_a) => {
@@ -73,7 +72,7 @@ const CodeBlockMessage = (_a) => {
73
72
  return (_jsx("code", Object.assign({}, props, { className: `pf-chatbot__message-inline-code ${isPrimary ? 'pf-m-primary' : ''}`, children: children })));
74
73
  }
75
74
  // Setup code block header
76
- const actions = (_jsxs(_Fragment, { children: [_jsxs(CodeBlockAction, { className: "pf-chatbot__message-code-block-default-action", children: [language && _jsx("div", { className: "pf-chatbot__message-code-block-language", children: language }), _jsx(Button, { ref: buttonRef, "aria-label": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : 'Copy code', variant: "plain", className: "pf-chatbot__button--copy", onClick: (event) => handleCopy(event, children), children: copied ? _jsx(CheckIcon, {}) : _jsx(RhUiCopyFillIcon, {}) }), _jsx(Tooltip, { id: tooltipID, content: "Copy", position: "top", triggerRef: buttonRef })] }), customActions] }));
75
+ const actions = (_jsxs(_Fragment, { children: [_jsxs(CodeBlockAction, { className: "pf-chatbot__message-code-block-default-action", children: [language && _jsx("div", { className: "pf-chatbot__message-code-block-language", children: language }), _jsx(Button, { ref: buttonRef, "aria-label": ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : 'Copy code', variant: "plain", className: "pf-chatbot__button--copy", onClick: (event) => handleCopy(event, children), children: copied ? _jsx(RhMicronsCheckmarkIcon, {}) : _jsx(RhUiCopyFillIcon, {}) }), _jsx(Tooltip, { id: tooltipID, content: "Copy", position: "top", triggerRef: buttonRef })] }), customActions] }));
77
76
  return (_jsx("div", { className: css('pf-chatbot__message-code-block', shouldRetainStyles && 'pf-m-markdown'), ref: codeBlockRef, children: _jsxs(CodeBlock, { actions: actions, children: [_jsx(CodeBlockCode, { children: _jsx(_Fragment, { children: isExpandable ? (_jsx(ExpandableSection, Object.assign({ variant: ExpandableSectionVariant.truncate, isExpanded: isExpanded, isDetached: true, toggleId: toggleId, contentId: contentId }, expandableSectionProps, { children: children }))) : (children) }) }), isExpandable && (_jsx(ExpandableSectionToggle, Object.assign({ isExpanded: isExpanded, onToggle: onToggle, direction: "up", toggleId: toggleId, contentId: contentId, hasTruncatedContent: true, className: "pf-chatbot__message-code-toggle" }, expandableSectionToggleProps, { children: isExpanded ? finalExpandedText : finalCollapsedText })))] }) }));
78
77
  };
79
78
  export default CodeBlockMessage;
@@ -18,7 +18,7 @@ import { monitorSampleAppQuickStartWithImage } from './QuickStarts/monitor-sampl
18
18
  import rehypeExternalLinks from '../__mocks__/rehype-external-links';
19
19
  import { AlertActionLink, Button, CodeBlockAction } from '@patternfly/react-core';
20
20
  // Mock the icon components
21
- jest.mock('@patternfly/react-icons', () => (Object.assign(Object.assign({}, jest.requireActual('@patternfly/react-icons')), { RhUiLikeIcon: () => _jsx("div", { children: "RhUiLikeIcon" }), RhUiLikeFillIcon: () => _jsx("div", { children: "RhUiLikeFillIcon" }), RhUiDislikeIcon: () => _jsx("div", { children: "RhUiDislikeIcon" }), RhUiDislikeFillIcon: () => _jsx("div", { children: "RhUiDislikeFillIcon" }), RhUiCopyIcon: () => _jsx("div", { children: "RhUiCopyIcon" }), RhUiCopyFillIcon: () => _jsx("div", { children: "RhUiCopyFillIcon" }), RhUiEditIcon: () => _jsx("div", { children: "RhUiEditIcon" }), RhUiEditFillIcon: () => _jsx("div", { children: "RhUiEditFillIcon" }), RhUiVolumeUpIcon: () => _jsx("div", { children: "RhUiVolumeUpIcon" }), RhUiVolumeUpFillIcon: () => _jsx("div", { children: "RhUiVolumeUpFillIcon" }), RhUiExportIcon: () => _jsx("div", { children: "RhUiExportIcon" }), RhUiExportFillIcon: () => _jsx("div", { children: "RhUiExportFillIcon" }), RhMicronsInformationFillIcon: () => _jsx("div", { children: "RhMicronsInformationFillIcon" }), RhUiBackwardsIcon: () => _jsx("div", { children: "RhUiBackwardsIcon" }), RhMicronsExternalLinkIcon: () => _jsx("div", { children: "RhMicronsExternalLinkIcon" }) })));
21
+ jest.mock('@patternfly/react-icons', () => (Object.assign(Object.assign({}, jest.requireActual('@patternfly/react-icons')), { RhUiLikeIcon: () => _jsx("div", { children: "RhUiLikeIcon" }), RhUiLikeFillIcon: () => _jsx("div", { children: "RhUiLikeFillIcon" }), RhUiDislikeIcon: () => _jsx("div", { children: "RhUiDislikeIcon" }), RhUiDislikeFillIcon: () => _jsx("div", { children: "RhUiDislikeFillIcon" }), RhUiCopyIcon: () => _jsx("div", { children: "RhUiCopyIcon" }), RhUiCopyFillIcon: () => _jsx("div", { children: "RhUiCopyFillIcon" }), RhUiEditIcon: () => _jsx("div", { children: "RhUiEditIcon" }), RhUiEditFillIcon: () => _jsx("div", { children: "RhUiEditFillIcon" }), RhUiVolumeUpIcon: () => _jsx("div", { children: "RhUiVolumeUpIcon" }), RhUiVolumeUpFillIcon: () => _jsx("div", { children: "RhUiVolumeUpFillIcon" }), RhUiExportIcon: () => _jsx("div", { children: "RhUiExportIcon" }), RhUiExportFillIcon: () => _jsx("div", { children: "RhUiExportFillIcon" }), RhMicronsInformationFillIcon: () => _jsx("div", { children: "RhMicronsInformationFillIcon" }), RhUiBackwardsIcon: () => _jsx("div", { children: "RhUiBackwardsIcon" }), RhMicronsExternalLinkIcon: () => _jsx("div", { children: "RhMicronsExternalLinkIcon" }), RhMicronsCheckmarkIcon: () => _jsx("div", { children: "RhMicronsCheckmarkIcon" }), RhMicronsCloseIcon: () => _jsx("div", { children: "RhMicronsCloseIcon" }), RhUiBookmarkIcon: () => _jsx("div", { children: "RhUiBookmarkIcon" }), RhUiClockIcon: () => _jsx("div", { children: "RhUiClockIcon" }), RhUiRocketFillIcon: () => _jsx("div", { children: "RhUiRocketFillIcon" }) })));
22
22
  const ALL_ACTIONS = [
23
23
  { label: /Good response/i },
24
24
  { label: /Bad response/i },
@@ -12,7 +12,7 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { useState } from 'react';
14
14
  import { Label, LabelGroup } from '@patternfly/react-core';
15
- import { CheckIcon } from '@patternfly/react-icons';
15
+ import { RhMicronsCheckmarkIcon } from '@patternfly/react-icons';
16
16
  import { css } from '@patternfly/react-styles';
17
17
  export const QuickResponse = ({ quickResponses, quickResponseContainerProps = { numLabels: 5 }, onSelect, isCompact }) => {
18
18
  const [selectedQuickResponse, setSelectedQuickResponse] = useState();
@@ -23,7 +23,7 @@ export const QuickResponse = ({ quickResponses, quickResponseContainerProps = {
23
23
  };
24
24
  return (_jsx(LabelGroup, Object.assign({ className: css('pf-chatbot__message-quick-response', quickResponseContainerProps === null || quickResponseContainerProps === void 0 ? void 0 : quickResponseContainerProps.className) }, quickResponseContainerProps, { children: quickResponses.map((_a) => {
25
25
  var { id, onClick, content, className } = _a, props = __rest(_a, ["id", "onClick", "content", "className"]);
26
- return (_jsx(Label, Object.assign({ variant: id === selectedQuickResponse ? undefined : 'outline', icon: id === selectedQuickResponse ? _jsx(CheckIcon, {}) : undefined, color: "blue", onClick: () => handleQuickResponseClick(id, onClick), className: css(id === selectedQuickResponse && 'pf-chatbot__message-quick-response--selected', className), isCompact: isCompact }, props, { children: content }), id));
26
+ return (_jsx(Label, Object.assign({ variant: id === selectedQuickResponse ? undefined : 'outline', icon: id === selectedQuickResponse ? _jsx(RhMicronsCheckmarkIcon, {}) : undefined, color: "blue", onClick: () => handleQuickResponseClick(id, onClick), className: css(id === selectedQuickResponse && 'pf-chatbot__message-quick-response--selected', className), isCompact: isCompact }, props, { children: content }), id));
27
27
  }) })));
28
28
  };
29
29
  export default QuickResponse;
@@ -1,11 +1,9 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import RocketIcon from '@patternfly/react-icons/dist/js/icons/rocket-icon';
3
- import OutlinedBookmarkIcon from '@patternfly/react-icons/dist/js/icons/outlined-bookmark-icon';
4
2
  import { Card, CardBody, CardHeader, CardFooter, CardTitle, Icon, Button, Flex, Stack, Label, pluralize } from '@patternfly/react-core';
5
- import OutlinedClockIcon from '@patternfly/react-icons/dist/js/icons/outlined-clock-icon';
6
3
  import QuickStartTileHeader from './QuickStartTileHeader';
7
4
  import QuickStartTileDescription from './QuickStartTileDescription';
8
5
  import FallbackImg from './FallbackImg';
6
+ import { RhUiBookmarkIcon, RhUiClockIcon, RhUiRocketFillIcon } from '@patternfly/react-icons';
9
7
  export const camelize = (str) => str.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, index) {
10
8
  if (+match === 0) {
11
9
  return '';
@@ -19,7 +17,7 @@ export const QuickStartTile = ({ className, quickStart, onClick, onSelectQuickSt
19
17
  quickStartIcon = _jsx(Icon, { size: "2xl", children: icon });
20
18
  }
21
19
  else {
22
- quickStartIcon = (_jsx(Icon, { size: "2xl", children: _jsx(FallbackImg, { src: icon, alt: "", className: "pfext-catalog-item-icon__img", fallback: _jsx(RocketIcon, {}) }) }));
20
+ quickStartIcon = (_jsx(Icon, { size: "2xl", children: _jsx(FallbackImg, { src: icon, alt: "", className: "pfext-catalog-item-icon__img", fallback: _jsx(RhUiRocketFillIcon, {}) }) }));
23
21
  }
24
22
  const onSelect = () => {
25
23
  if (!link) {
@@ -30,10 +28,10 @@ export const QuickStartTile = ({ className, quickStart, onClick, onSelectQuickSt
30
28
  }
31
29
  onClick && onClick();
32
30
  };
33
- const ActionIcon = (action === null || action === void 0 ? void 0 : action.icon) || OutlinedBookmarkIcon;
31
+ const ActionIcon = (action === null || action === void 0 ? void 0 : action.icon) || RhUiBookmarkIcon;
34
32
  const additionalAction = action ? (_jsx(Button, Object.assign({ "aria-label": action['aria-label'], icon: _jsx(ActionIcon, {}), variant: "plain", onClick: action.onClick }, action.buttonProps))) : undefined;
35
33
  return (_jsxs(Card, { className: `pf-chatbot__quickstarts-tile ${className ? className : ''}`, id: `${id}-chatbot-qs-tile`, style: { height: '100%' }, "data-testid": `chatbot-qs-card-${camelize(displayName)}`, isCompact: isCompact, children: [_jsx(CardHeader, Object.assign({}, (action && {
36
34
  actions: { actions: additionalAction }
37
- }), { children: quickStartIcon })), _jsx(CardTitle, { children: _jsx(QuickStartTileHeader, { name: displayName, onSelect: onSelect, quickStartId: id }) }), _jsx(CardBody, { children: _jsxs(Stack, { hasGutter: true, children: [_jsxs(Flex, { spaceItems: { default: 'spaceItemsSm' }, children: [type && _jsx(Label, { color: type.color, children: type.text }), durationMinutes && (_jsx(Label, { variant: "outline", "data-test": "duration", icon: _jsx(OutlinedClockIcon, {}), children: pluralize(durationMinutes, minuteWord, minuteWordPlural) }))] }), _jsx(QuickStartTileDescription, { description: description, prerequisites: prerequisites, prerequisiteWord: prerequisiteWord, prerequisiteWordPlural: prerequisiteWordPlural, quickStartButtonAriaLabel: quickStartButtonAriaLabel })] }) }), _jsx(CardFooter, { children: _jsx(Button, { variant: "link", isInline: true, onClick: onSelect, children: _jsx("span", { className: "pf-v6-c-button__text", children: "Start" }) }) })] }));
35
+ }), { children: quickStartIcon })), _jsx(CardTitle, { children: _jsx(QuickStartTileHeader, { name: displayName, onSelect: onSelect, quickStartId: id }) }), _jsx(CardBody, { children: _jsxs(Stack, { hasGutter: true, children: [_jsxs(Flex, { spaceItems: { default: 'spaceItemsSm' }, children: [type && _jsx(Label, { color: type.color, children: type.text }), durationMinutes && (_jsx(Label, { variant: "outline", "data-test": "duration", icon: _jsx(RhUiClockIcon, {}), children: pluralize(durationMinutes, minuteWord, minuteWordPlural) }))] }), _jsx(QuickStartTileDescription, { description: description, prerequisites: prerequisites, prerequisiteWord: prerequisiteWord, prerequisiteWordPlural: prerequisiteWordPlural, quickStartButtonAriaLabel: quickStartButtonAriaLabel })] }) }), _jsx(CardFooter, { children: _jsx(Button, { variant: "link", isInline: true, onClick: onSelect, children: _jsx("span", { className: "pf-v6-c-button__text", children: "Start" }) }) })] }));
38
36
  };
39
37
  export default QuickStartTile;
@@ -14,9 +14,9 @@ import { forwardRef } from 'react';
14
14
  // Import PatternFly components
15
15
  import { Button, Icon, Tooltip } from '@patternfly/react-core';
16
16
  import { useDropzone } from 'react-dropzone';
17
- import { PaperclipIcon } from '@patternfly/react-icons/dist/esm/icons/paperclip-icon';
17
+ import { RhUiPaperClipIcon } from '@patternfly/react-icons';
18
18
  const AttachButtonBase = (_a) => {
19
- var { onAttachAccepted, onClick, isDisabled, className, tooltipProps, innerRef, tooltipContent = 'Attach', inputTestId, isCompact, allowedFileTypes, minSize, maxSize, maxFiles, isAttachmentDisabled, onAttach, onAttachRejected, validator, dropzoneProps, icon = _jsx(PaperclipIcon, {}) } = _a, props = __rest(_a, ["onAttachAccepted", "onClick", "isDisabled", "className", "tooltipProps", "innerRef", "tooltipContent", "inputTestId", "isCompact", "allowedFileTypes", "minSize", "maxSize", "maxFiles", "isAttachmentDisabled", "onAttach", "onAttachRejected", "validator", "dropzoneProps", "icon"]);
19
+ var { onAttachAccepted, onClick, isDisabled, className, tooltipProps, innerRef, tooltipContent = 'Attach', inputTestId, isCompact, allowedFileTypes, minSize, maxSize, maxFiles, isAttachmentDisabled, onAttach, onAttachRejected, validator, dropzoneProps, icon = _jsx(RhUiPaperClipIcon, {}) } = _a, props = __rest(_a, ["onAttachAccepted", "onClick", "isDisabled", "className", "tooltipProps", "innerRef", "tooltipContent", "inputTestId", "isCompact", "allowedFileTypes", "minSize", "maxSize", "maxFiles", "isAttachmentDisabled", "onAttach", "onAttachRejected", "validator", "dropzoneProps", "icon"]);
20
20
  const { open, getInputProps } = useDropzone(Object.assign({ multiple: true, onDropAccepted: onAttachAccepted, accept: allowedFileTypes, minSize,
21
21
  maxSize,
22
22
  maxFiles, disabled: isAttachmentDisabled, onDrop: onAttach, onDropRejected: onAttachRejected, validator }, dropzoneProps));
@@ -11,10 +11,8 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  };
12
12
  import { jsx as _jsx } from "react/jsx-runtime";
13
13
  import { useState, useCallback, useEffect } from 'react';
14
- // Import PatternFly components
15
14
  import { Button, Tooltip, Icon } from '@patternfly/react-core';
16
- // Import FontAwesome icons
17
- import { MicrophoneIcon } from '@patternfly/react-icons/dist/esm/icons/microphone-icon';
15
+ import { RhUiMicrophoneFillIcon } from '@patternfly/react-icons';
18
16
  export const MicrophoneButton = (_a) => {
19
17
  var { isListening, onIsListeningChange, onSpeechRecognition, className, tooltipProps, tooltipContent = { active: 'Stop listening', inactive: 'Use microphone' }, language = 'en-US', isCompact } = _a, props = __rest(_a, ["isListening", "onIsListeningChange", "onSpeechRecognition", "className", "tooltipProps", "tooltipContent", "language", "isCompact"]);
20
18
  // Microphone
@@ -60,6 +58,6 @@ export const MicrophoneButton = (_a) => {
60
58
  if (!speechRecognition) {
61
59
  return null;
62
60
  }
63
- return (_jsx(Tooltip, Object.assign({ aria: "none", "aria-live": "polite", id: "pf-chatbot__tooltip--use-microphone", content: isListening ? tooltipContent.active : tooltipContent.inactive, position: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.position) || 'top', entryDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.entryDelay) || 0, exitDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.exitDelay) || 0, distance: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.distance) || 8, animationDuration: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.animationDuration) || 0 }, tooltipProps, { children: _jsx(Button, Object.assign({ variant: "plain", className: `pf-chatbot__button--microphone ${isListening ? 'pf-chatbot__button--microphone--active' : ''} ${isCompact ? 'pf-m-compact' : ''} ${className !== null && className !== void 0 ? className : ''}`, "aria-label": props['aria-label'] || (isListening ? 'Stop listening' : 'Use microphone'), "aria-pressed": isListening, onClick: isListening ? stopListening : startListening, icon: _jsx(Icon, { iconSize: isCompact ? 'lg' : 'xl', isInline: true, children: _jsx(MicrophoneIcon, {}) }), size: isCompact ? 'sm' : undefined }, props)) })));
61
+ return (_jsx(Tooltip, Object.assign({ aria: "none", "aria-live": "polite", id: "pf-chatbot__tooltip--use-microphone", content: isListening ? tooltipContent.active : tooltipContent.inactive, position: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.position) || 'top', entryDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.entryDelay) || 0, exitDelay: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.exitDelay) || 0, distance: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.distance) || 8, animationDuration: (tooltipProps === null || tooltipProps === void 0 ? void 0 : tooltipProps.animationDuration) || 0 }, tooltipProps, { children: _jsx(Button, Object.assign({ variant: "plain", className: `pf-chatbot__button--microphone ${isListening ? 'pf-chatbot__button--microphone--active' : ''} ${isCompact ? 'pf-m-compact' : ''} ${className !== null && className !== void 0 ? className : ''}`, "aria-label": props['aria-label'] || (isListening ? 'Stop listening' : 'Use microphone'), "aria-pressed": isListening, onClick: isListening ? stopListening : startListening, icon: _jsx(Icon, { iconSize: isCompact ? 'lg' : 'xl', isInline: true, children: _jsx(RhUiMicrophoneFillIcon, {}) }), size: isCompact ? 'sm' : undefined }, props)) })));
64
62
  };
65
63
  export default MicrophoneButton;
@@ -1,7 +1,5 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- // Import PatternFly components
3
2
  import { Button, Tooltip, Icon } from '@patternfly/react-core';
4
- import { ArrowUpIcon } from '@patternfly/react-icons/dist/esm/icons/arrow-up-icon';
5
- import { ArrowDownIcon } from '@patternfly/react-icons/dist/esm/icons/arrow-down-icon';
6
- const JumpButton = ({ position, isHidden, onClick, jumpButtonProps, jumpButtonTooltipProps }) => isHidden ? null : (_jsx(Tooltip, Object.assign({ id: `pf-chatbot__tooltip--jump-${position}`, content: `Back to ${position}`, position: "top" }, jumpButtonTooltipProps, { children: _jsx(Button, Object.assign({ variant: "plain", className: `pf-chatbot__jump pf-chatbot__jump--${position}`, "aria-label": `Back to ${position}`, onClick: onClick }, jumpButtonProps, { children: _jsx(Icon, { iconSize: "lg", isInline: true, children: position === 'top' ? _jsx(ArrowUpIcon, {}) : _jsx(ArrowDownIcon, {}) }) })) })));
3
+ import { RhMicronsArrowDownIcon, RhMicronsArrowUpIcon } from '@patternfly/react-icons';
4
+ const JumpButton = ({ position, isHidden, onClick, jumpButtonProps, jumpButtonTooltipProps }) => isHidden ? null : (_jsx(Tooltip, Object.assign({ id: `pf-chatbot__tooltip--jump-${position}`, content: `Back to ${position}`, position: "top" }, jumpButtonTooltipProps, { children: _jsx(Button, Object.assign({ variant: "plain", className: `pf-chatbot__jump pf-chatbot__jump--${position}`, "aria-label": `Back to ${position}`, onClick: onClick }, jumpButtonProps, { children: _jsx(Icon, { iconSize: "lg", isInline: true, children: position === 'top' ? _jsx(RhMicronsArrowUpIcon, {}) : _jsx(RhMicronsArrowDownIcon, {}) }) })) })));
7
5
  export default JumpButton;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/chatbot",
3
- "version": "6.8.0-prerelease.5",
3
+ "version": "6.8.0-prerelease.7",
4
4
  "description": "This library provides React components based on PatternFly 6 that can be used to build chatbots.",
5
5
  "main": "dist/cjs/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -52,7 +52,7 @@
52
52
  },
53
53
  "peerDependencies": {
54
54
  "@monaco-editor/react": "^4.7.0",
55
- "monaco-editor": "^0.54.0",
55
+ "monaco-editor": "^0.56.0",
56
56
  "react": "^18 || ^19",
57
57
  "react-dom": "^18 || ^19"
58
58
  },
@@ -88,9 +88,5 @@
88
88
  "victory-stack": "^37.1.1",
89
89
  "victory-tooltip": "^37.1.1",
90
90
  "victory-voronoi-container": "^37.1.1"
91
- },
92
- "overrides": {
93
- "puppeteer": "^23.6.1",
94
- "puppeteer-cluster": "^0.24.0"
95
91
  }
96
92
  }
@@ -1,5 +1,3 @@
1
- import userAvatar from './user_avatar.svg';
2
-
3
1
  export const explorePipelinesQuickStart = {
4
2
  apiVersion: 'console.openshift.io/v1',
5
3
  kind: 'QuickStarts',
@@ -10,7 +8,6 @@ export const explorePipelinesQuickStart = {
10
8
  version: 4.7,
11
9
  displayName: `Installing the Pipelines Operator`,
12
10
  durationMinutes: 10,
13
- icon: userAvatar,
14
11
  description: `Install the OpenShift® Pipelines Operator to build Pipelines using Tekton.`,
15
12
  prerequisites: [''],
16
13
  introduction: `OpenShift® Pipelines is a cloud-native, continuous integration and continuous delivery (CI/CD) solution based on Kubernetes resources. It uses Tekton building blocks to automate deployments across multiple Kubernetes distributions by abstracting away the underlying implementation details.
@@ -2,7 +2,7 @@ import { PropsWithChildren } from 'react';
2
2
  import { Button, Label, LabelProps } from '@patternfly/react-core';
3
3
  import FileDetails from '../FileDetails';
4
4
  import { Spinner } from '@patternfly/react-core';
5
- import { TimesIcon } from '@patternfly/react-icons';
5
+ import { RhMicronsCloseIcon } from '@patternfly/react-icons';
6
6
 
7
7
  export interface FileDetailsLabelProps extends Omit<LabelProps, 'onClose' | 'onClick'> {
8
8
  /** Name of file, including extension */
@@ -40,7 +40,7 @@ export const FileDetailsLabel = ({
40
40
  spinnerTestId,
41
41
  fileSize,
42
42
  hasTruncation = true,
43
- closeButtonIcon = <TimesIcon />,
43
+ closeButtonIcon = <RhMicronsCloseIcon />,
44
44
  ...props
45
45
  }: PropsWithChildren<FileDetailsLabelProps>) => {
46
46
  const handleClose = (event) => {
@@ -20,7 +20,7 @@ import {
20
20
  import { ChatbotDisplayMode } from '../Chatbot';
21
21
  import ChatbotModal, { ChatbotModalProps } from '../ChatbotModal';
22
22
  import FileDetailsLabel, { FileDetailsLabelProps } from '../FileDetailsLabel';
23
- import { TrashIcon } from '@patternfly/react-icons';
23
+ import { RhUiTrashFillIcon } from '@patternfly/react-icons';
24
24
 
25
25
  export interface ImagePreviewProps extends Omit<ChatbotModalProps, 'children'> {
26
26
  /** Class applied to modal */
@@ -121,7 +121,11 @@ const ImagePreview: FunctionComponent<ImagePreviewProps> = ({
121
121
  fileSize={images[page - 1].fileSize}
122
122
  hasTruncation={false}
123
123
  onClose={onCloseFileDetailsLabel}
124
- closeButtonIcon={<TrashIcon />}
124
+ closeButtonIcon={
125
+ <Icon size="md">
126
+ <RhUiTrashFillIcon />
127
+ </Icon>
128
+ }
125
129
  {...fileDetailsLabelProps}
126
130
  />
127
131
  </StackItem>
@@ -17,9 +17,8 @@ import {
17
17
  getUniqueId
18
18
  } from '@patternfly/react-core';
19
19
 
20
- import { CheckIcon } from '@patternfly/react-icons/dist/esm/icons/check-icon';
21
20
  import { css } from '@patternfly/react-styles';
22
- import { RhUiCopyFillIcon } from '@patternfly/react-icons';
21
+ import { RhMicronsCheckmarkIcon, RhUiCopyFillIcon } from '@patternfly/react-icons';
23
22
 
24
23
  export interface CodeBlockMessageProps {
25
24
  /** Content rendered in code block */
@@ -142,7 +141,7 @@ const CodeBlockMessage = ({
142
141
  className="pf-chatbot__button--copy"
143
142
  onClick={(event) => handleCopy(event, children)}
144
143
  >
145
- {copied ? <CheckIcon /> : <RhUiCopyFillIcon />}
144
+ {copied ? <RhMicronsCheckmarkIcon /> : <RhUiCopyFillIcon />}
146
145
  </Button>
147
146
  <Tooltip id={tooltipID} content="Copy" position="top" triggerRef={buttonRef} />
148
147
  </CodeBlockAction>
@@ -26,7 +26,12 @@ jest.mock('@patternfly/react-icons', () => ({
26
26
  RhUiExportFillIcon: () => <div>RhUiExportFillIcon</div>,
27
27
  RhMicronsInformationFillIcon: () => <div>RhMicronsInformationFillIcon</div>,
28
28
  RhUiBackwardsIcon: () => <div>RhUiBackwardsIcon</div>,
29
- RhMicronsExternalLinkIcon: () => <div>RhMicronsExternalLinkIcon</div>
29
+ RhMicronsExternalLinkIcon: () => <div>RhMicronsExternalLinkIcon</div>,
30
+ RhMicronsCheckmarkIcon: () => <div>RhMicronsCheckmarkIcon</div>,
31
+ RhMicronsCloseIcon: () => <div>RhMicronsCloseIcon</div>,
32
+ RhUiBookmarkIcon: () => <div>RhUiBookmarkIcon</div>,
33
+ RhUiClockIcon: () => <div>RhUiClockIcon</div>,
34
+ RhUiRocketFillIcon: () => <div>RhUiRocketFillIcon</div>
30
35
  }));
31
36
 
32
37
  const ALL_ACTIONS = [
@@ -1,7 +1,7 @@
1
1
  import type { FunctionComponent } from 'react';
2
2
  import { useState } from 'react';
3
3
  import { Label, LabelGroup, LabelGroupProps, LabelProps } from '@patternfly/react-core';
4
- import { CheckIcon } from '@patternfly/react-icons';
4
+ import { RhMicronsCheckmarkIcon } from '@patternfly/react-icons';
5
5
  import { css } from '@patternfly/react-styles';
6
6
 
7
7
  export interface QuickResponse extends Omit<LabelProps, 'children'> {
@@ -42,7 +42,7 @@ export const QuickResponse: FunctionComponent<QuickResponseProps> = ({
42
42
  {quickResponses.map(({ id, onClick, content, className, ...props }: QuickResponse) => (
43
43
  <Label
44
44
  variant={id === selectedQuickResponse ? undefined : 'outline'}
45
- icon={id === selectedQuickResponse ? <CheckIcon /> : undefined}
45
+ icon={id === selectedQuickResponse ? <RhMicronsCheckmarkIcon /> : undefined}
46
46
  color="blue"
47
47
  key={id}
48
48
  onClick={() => handleQuickResponseClick(id, onClick)}
@@ -1,6 +1,4 @@
1
1
  import type { FC, ReactNode } from 'react';
2
- import RocketIcon from '@patternfly/react-icons/dist/js/icons/rocket-icon';
3
- import OutlinedBookmarkIcon from '@patternfly/react-icons/dist/js/icons/outlined-bookmark-icon';
4
2
  import {
5
3
  Card,
6
4
  CardBody,
@@ -14,11 +12,11 @@ import {
14
12
  Label,
15
13
  pluralize
16
14
  } from '@patternfly/react-core';
17
- import OutlinedClockIcon from '@patternfly/react-icons/dist/js/icons/outlined-clock-icon';
18
15
  import QuickStartTileHeader from './QuickStartTileHeader';
19
16
  import QuickStartTileDescription from './QuickStartTileDescription';
20
17
  import { QuickStart, QuickstartAction } from './types';
21
18
  import FallbackImg from './FallbackImg';
19
+ import { RhUiBookmarkIcon, RhUiClockIcon, RhUiRocketFillIcon } from '@patternfly/react-icons';
22
20
 
23
21
  export const camelize = (str: string) =>
24
22
  str.replace(/(?:^\w|[A-Z]|\b\w|\s+)/g, function (match, index) {
@@ -77,7 +75,12 @@ export const QuickStartTile: FC<QuickStartTileProps> = ({
77
75
  } else {
78
76
  quickStartIcon = (
79
77
  <Icon size="2xl">
80
- <FallbackImg src={icon as string} alt="" className="pfext-catalog-item-icon__img" fallback={<RocketIcon />} />
78
+ <FallbackImg
79
+ src={icon as string}
80
+ alt=""
81
+ className="pfext-catalog-item-icon__img"
82
+ fallback={<RhUiRocketFillIcon />}
83
+ />
81
84
  </Icon>
82
85
  );
83
86
  }
@@ -91,7 +94,7 @@ export const QuickStartTile: FC<QuickStartTileProps> = ({
91
94
  onClick && onClick();
92
95
  };
93
96
 
94
- const ActionIcon = action?.icon || OutlinedBookmarkIcon;
97
+ const ActionIcon = action?.icon || RhUiBookmarkIcon;
95
98
  const additionalAction = action ? (
96
99
  <Button
97
100
  aria-label={action['aria-label']}
@@ -125,7 +128,7 @@ export const QuickStartTile: FC<QuickStartTileProps> = ({
125
128
  <Flex spaceItems={{ default: 'spaceItemsSm' }}>
126
129
  {type && <Label color={type.color}>{type.text}</Label>}
127
130
  {durationMinutes && (
128
- <Label variant="outline" data-test="duration" icon={<OutlinedClockIcon />}>
131
+ <Label variant="outline" data-test="duration" icon={<RhUiClockIcon />}>
129
132
  {pluralize(durationMinutes, minuteWord, minuteWordPlural)}
130
133
  </Label>
131
134
  )}
@@ -8,7 +8,7 @@ import { forwardRef } from 'react';
8
8
  // Import PatternFly components
9
9
  import { Button, ButtonProps, Icon, Tooltip, TooltipProps } from '@patternfly/react-core';
10
10
  import { Accept, DropEvent, DropzoneOptions, FileError, FileRejection, useDropzone } from 'react-dropzone';
11
- import { PaperclipIcon } from '@patternfly/react-icons/dist/esm/icons/paperclip-icon';
11
+ import { RhUiPaperClipIcon } from '@patternfly/react-icons';
12
12
 
13
13
  export interface AttachButtonProps extends ButtonProps {
14
14
  /** Callback for when button is clicked */
@@ -74,7 +74,7 @@ const AttachButtonBase: FunctionComponent<AttachButtonProps> = ({
74
74
  onAttachRejected,
75
75
  validator,
76
76
  dropzoneProps,
77
- icon = <PaperclipIcon />,
77
+ icon = <RhUiPaperClipIcon />,
78
78
  ...props
79
79
  }: AttachButtonProps) => {
80
80
  const { open, getInputProps } = useDropzone({
@@ -2,14 +2,9 @@
2
2
  // Chatbot Footer - Message Bar - Microphone
3
3
  // ============================================================================
4
4
  import type { FunctionComponent } from 'react';
5
-
6
5
  import { useState, useCallback, useEffect } from 'react';
7
-
8
- // Import PatternFly components
9
6
  import { Button, ButtonProps, Tooltip, TooltipProps, Icon } from '@patternfly/react-core';
10
-
11
- // Import FontAwesome icons
12
- import { MicrophoneIcon } from '@patternfly/react-icons/dist/esm/icons/microphone-icon';
7
+ import { RhUiMicrophoneFillIcon } from '@patternfly/react-icons';
13
8
 
14
9
  export interface MicrophoneButtonProps extends ButtonProps {
15
10
  /** Boolean check if the browser is listening to speech or not */
@@ -112,7 +107,7 @@ export const MicrophoneButton: FunctionComponent<MicrophoneButtonProps> = ({
112
107
  onClick={isListening ? stopListening : startListening}
113
108
  icon={
114
109
  <Icon iconSize={isCompact ? 'lg' : 'xl'} isInline>
115
- <MicrophoneIcon />
110
+ <RhUiMicrophoneFillIcon />
116
111
  </Icon>
117
112
  }
118
113
  size={isCompact ? 'sm' : undefined}
@@ -2,12 +2,8 @@
2
2
  // Chatbot Main - Messages - Jump to Top
3
3
  // ============================================================================
4
4
  import type { FunctionComponent } from 'react';
5
-
6
- // Import PatternFly components
7
5
  import { Button, Tooltip, Icon, TooltipProps, ButtonProps } from '@patternfly/react-core';
8
-
9
- import { ArrowUpIcon } from '@patternfly/react-icons/dist/esm/icons/arrow-up-icon';
10
- import { ArrowDownIcon } from '@patternfly/react-icons/dist/esm/icons/arrow-down-icon';
6
+ import { RhMicronsArrowDownIcon, RhMicronsArrowUpIcon } from '@patternfly/react-icons';
11
7
 
12
8
  export interface JumpButtonProps {
13
9
  /** Position of the Jump Button(top/bottom) */
@@ -44,7 +40,7 @@ const JumpButton: FunctionComponent<JumpButtonProps> = ({
44
40
  {...jumpButtonProps}
45
41
  >
46
42
  <Icon iconSize="lg" isInline>
47
- {position === 'top' ? <ArrowUpIcon /> : <ArrowDownIcon />}
43
+ {position === 'top' ? <RhMicronsArrowUpIcon /> : <RhMicronsArrowDownIcon />}
48
44
  </Icon>
49
45
  </Button>
50
46
  </Tooltip>
package/src/index.ts CHANGED
@@ -60,9 +60,6 @@ export * from './FilePreview';
60
60
  export { default as ImagePreview } from './ImagePreview';
61
61
  export * from './ImagePreview';
62
62
 
63
- export { default as LoadingMessage } from './LoadingMessage';
64
- export * from './LoadingMessage';
65
-
66
63
  export { default as MarkdownContent } from './MarkdownContent';
67
64
  export * from './MarkdownContent';
68
65