@patternfly/quickstarts 2.4.2 → 5.0.0-prerelease.1
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/README.md +32 -23
- package/dist/ConsoleInternal/components/markdown-view.d.ts +19 -19
- package/dist/ConsoleInternal/components/utils/camel-case-wrap.d.ts +6 -6
- package/dist/ConsoleInternal/components/utils/index.d.ts +3 -3
- package/dist/ConsoleInternal/components/utils/router.d.ts +9 -9
- package/dist/ConsoleInternal/components/utils/status-box.d.ts +20 -20
- package/dist/ConsoleInternal/module/k8s/types.d.ts +42 -42
- package/dist/ConsoleShared/index.d.ts +1 -1
- package/dist/ConsoleShared/src/components/index.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/MarkdownCopyClipboard.d.ts +13 -13
- package/dist/ConsoleShared/src/components/markdown-extensions/accordion-extension.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/accordion-render-extension.d.ts +6 -6
- package/dist/ConsoleShared/src/components/markdown-extensions/admonition-extension.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/code-extension.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/const.d.ts +5 -5
- package/dist/ConsoleShared/src/components/markdown-extensions/index.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/inline-clipboard-extension.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/multiline-clipboard-extension.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-extensions/utils.d.ts +1 -1
- package/dist/ConsoleShared/src/components/markdown-highlight-extension/MarkdownHighlightExtension.d.ts +7 -7
- package/dist/ConsoleShared/src/components/markdown-highlight-extension/highlight-consts.d.ts +4 -4
- package/dist/ConsoleShared/src/components/markdown-highlight-extension/index.d.ts +1 -1
- package/dist/ConsoleShared/src/components/modal/Modal.d.ts +9 -9
- package/dist/ConsoleShared/src/components/modal/index.d.ts +1 -1
- package/dist/ConsoleShared/src/components/popper/Portal.d.ts +8 -7
- package/dist/ConsoleShared/src/components/popper/SimplePopper.d.ts +6 -3
- package/dist/ConsoleShared/src/components/popper/index.d.ts +2 -2
- package/dist/ConsoleShared/src/components/spotlight/InteractiveSpotlight.d.ts +7 -7
- package/dist/ConsoleShared/src/components/spotlight/Spotlight.d.ts +7 -7
- package/dist/ConsoleShared/src/components/spotlight/StaticSpotlight.d.ts +7 -7
- package/dist/ConsoleShared/src/components/spotlight/index.d.ts +1 -1
- package/dist/ConsoleShared/src/components/status/GenericStatus.d.ts +12 -11
- package/dist/ConsoleShared/src/components/status/NotStartedIcon.d.ts +3 -2
- package/dist/ConsoleShared/src/components/status/PopoverStatus.d.ts +13 -12
- package/dist/ConsoleShared/src/components/status/Status.d.ts +11 -11
- package/dist/ConsoleShared/src/components/status/StatusIconAndText.d.ts +8 -8
- package/dist/ConsoleShared/src/components/status/icons.d.ts +9 -9
- package/dist/ConsoleShared/src/components/status/index.d.ts +1 -1
- package/dist/ConsoleShared/src/components/status/statuses.d.ts +5 -5
- package/dist/ConsoleShared/src/components/status/types.d.ts +9 -7
- package/dist/ConsoleShared/src/components/utils/FallbackImg.d.ts +9 -9
- package/dist/ConsoleShared/src/components/utils/index.d.ts +1 -1
- package/dist/ConsoleShared/src/constants/index.d.ts +1 -1
- package/dist/ConsoleShared/src/constants/ui.d.ts +1 -1
- package/dist/ConsoleShared/src/hooks/index.d.ts +6 -6
- package/dist/ConsoleShared/src/hooks/scroll.d.ts +8 -8
- package/dist/ConsoleShared/src/hooks/useBoundingClientRect.d.ts +3 -1
- package/dist/ConsoleShared/src/hooks/useEventListener.d.ts +1 -1
- package/dist/ConsoleShared/src/hooks/useForceRender.d.ts +4 -4
- package/dist/ConsoleShared/src/hooks/useResizeObserver.d.ts +1 -1
- package/dist/ConsoleShared/src/hooks/useScrollShadows.d.ts +7 -7
- package/dist/ConsoleShared/src/index.d.ts +4 -4
- package/dist/ConsoleShared/src/utils/index.d.ts +1 -1
- package/dist/ConsoleShared/src/utils/useCombineRefs.d.ts +2 -2
- package/dist/HelpTopicDrawer.d.ts +33 -32
- package/dist/HelpTopicPanelContent.d.ts +11 -11
- package/dist/QuickStartCatalogPage.d.ts +14 -14
- package/dist/QuickStartCloseModal.d.ts +8 -8
- package/dist/QuickStartController.d.ts +10 -10
- package/dist/QuickStartDrawer.d.ts +62 -62
- package/dist/QuickStartMarkdownView.d.ts +9 -9
- package/dist/QuickStartPanelContent.d.ts +15 -15
- package/dist/catalog/Catalog/QuickStartCatalogHeader.d.ts +6 -6
- package/dist/catalog/Catalog/QuickStartCatalogSection.d.ts +5 -5
- package/dist/catalog/Catalog/QuickStartCatalogToolbar.d.ts +5 -5
- package/dist/catalog/Catalog/index.d.ts +3 -3
- package/dist/catalog/QuickStartCatalog.d.ts +8 -8
- package/dist/catalog/QuickStartTile.d.ts +11 -11
- package/dist/catalog/QuickStartTileDescription.d.ts +8 -8
- package/dist/catalog/QuickStartTileFooter.d.ts +8 -8
- package/dist/catalog/QuickStartTileFooterExternal.d.ts +8 -8
- package/dist/catalog/QuickStartTileHeader.d.ts +12 -12
- package/dist/catalog/Toolbar/QuickStartCatalogFilter.d.ts +10 -10
- package/dist/catalog/Toolbar/QuickStartCatalogFilterItems.d.ts +31 -31
- package/dist/catalog/index.d.ts +9 -9
- package/dist/controller/QuickStartConclusion.d.ts +12 -12
- package/dist/controller/QuickStartContent.d.ts +14 -14
- package/dist/controller/QuickStartFooter.d.ts +14 -14
- package/dist/controller/QuickStartIntroduction.d.ts +12 -12
- package/dist/controller/QuickStartTaskHeader.d.ts +15 -15
- package/dist/controller/QuickStartTaskHeaderList.d.ts +10 -10
- package/dist/controller/QuickStartTaskReview.d.ts +10 -10
- package/dist/controller/QuickStartTasks.d.ts +12 -12
- package/dist/data/mocks/json/explore-pipeline-quickstart.d.ts +2 -2
- package/dist/data/mocks/json/explore-serverless-quickstart.d.ts +2 -2
- package/dist/data/mocks/json/monitor-sampleapp-quickstart.d.ts +2 -2
- package/dist/data/mocks/json/tour-icons.d.ts +2 -2
- package/dist/data/quick-start-test-data.d.ts +2 -2
- package/dist/data/test-utils.d.ts +8 -7
- package/dist/index.d.ts +16 -16
- package/dist/index.es.js +2340 -2390
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +2340 -2389
- package/dist/index.js.map +1 -1
- package/dist/patternfly-docs/quick-starts/examples/Basic.jsx +1 -1
- package/dist/patternfly-docs/quick-starts/examples/HelpTopic.jsx +2 -4
- package/dist/patternfly-global.css +752 -1110
- package/dist/patternfly-nested.css +9248 -9609
- package/dist/quickstarts-base.css +173 -173
- package/dist/quickstarts-full.es.js +19535 -10749
- package/dist/quickstarts-full.es.js.map +1 -1
- package/dist/quickstarts-standalone.css +216 -219
- package/dist/quickstarts-standalone.min.css +4 -4
- package/dist/quickstarts-vendor.css +71 -71
- package/dist/quickstarts.css +244 -244
- package/dist/quickstarts.min.css +1 -1
- package/dist/styles/patternfly-global-entry.d.ts +1 -1
- package/dist/styles/patternfly-nested-entry.d.ts +1 -1
- package/dist/styles/quickstarts-standalone-entry.d.ts +1 -1
- package/dist/styles/vendor-entry.d.ts +1 -1
- package/dist/utils/PluralResolver.d.ts +16 -10
- package/dist/utils/asciidoc-procedure-parser.d.ts +12 -12
- package/dist/utils/const.d.ts +6 -6
- package/dist/utils/help-topic-context.d.ts +23 -23
- package/dist/utils/help-topic-types.d.ts +13 -13
- package/dist/utils/quick-start-context.d.ts +81 -81
- package/dist/utils/quick-start-types.d.ts +60 -58
- package/dist/utils/quick-start-utils.d.ts +10 -10
- package/dist/utils/useLocalStorage.d.ts +1 -1
- package/package.json +17 -13
- package/src/ConsoleInternal/components/_icon-and-text.scss +2 -2
- package/src/ConsoleInternal/components/catalog/_catalog.scss +20 -20
- package/src/ConsoleInternal/components/markdown-view.tsx +23 -52
- package/src/ConsoleInternal/components/utils/_status-box.scss +1 -1
- package/src/ConsoleInternal/components/utils/camel-case-wrap.tsx +3 -3
- package/src/ConsoleInternal/components/utils/router.ts +0 -2
- package/src/ConsoleInternal/components/utils/status-box.tsx +8 -46
- package/src/ConsoleInternal/module/k8s/types.ts +6 -6
- package/src/ConsoleShared/src/components/layout/PageLayout.scss +10 -10
- package/src/ConsoleShared/src/components/markdown-extensions/MarkdownCopyClipboard.tsx +13 -11
- package/src/ConsoleShared/src/components/markdown-extensions/accordion-extension.tsx +3 -4
- package/src/ConsoleShared/src/components/markdown-extensions/accordion-render-extension.tsx +7 -7
- package/src/ConsoleShared/src/components/markdown-extensions/admonition-extension.tsx +4 -4
- package/src/ConsoleShared/src/components/markdown-extensions/code-extension.tsx +1 -3
- package/src/ConsoleShared/src/components/markdown-extensions/inline-clipboard-extension.tsx +5 -5
- package/src/ConsoleShared/src/components/markdown-extensions/multiline-clipboard-extension.tsx +8 -8
- package/src/ConsoleShared/src/components/markdown-extensions/showdown-extension.scss +5 -5
- package/src/ConsoleShared/src/components/markdown-extensions/utils.ts +1 -3
- package/src/ConsoleShared/src/components/markdown-highlight-extension/MarkdownHighlightExtension.tsx +7 -6
- package/src/ConsoleShared/src/components/popper/Portal.tsx +6 -4
- package/src/ConsoleShared/src/components/popper/SimplePopper.tsx +7 -5
- package/src/ConsoleShared/src/components/spotlight/InteractiveSpotlight.tsx +2 -2
- package/src/ConsoleShared/src/components/spotlight/Spotlight.tsx +2 -2
- package/src/ConsoleShared/src/components/spotlight/StaticSpotlight.tsx +3 -3
- package/src/ConsoleShared/src/components/spotlight/spotlight.scss +4 -4
- package/src/ConsoleShared/src/components/status/GenericStatus.tsx +1 -0
- package/src/ConsoleShared/src/components/status/PopoverStatus.tsx +20 -23
- package/src/ConsoleShared/src/components/status/Status.tsx +2 -2
- package/src/ConsoleShared/src/components/status/icons.tsx +17 -55
- package/src/ConsoleShared/src/components/status/statuses.tsx +1 -17
- package/src/ConsoleShared/src/components/status/types.ts +3 -2
- package/src/ConsoleShared/src/components/utils/FallbackImg.tsx +2 -2
- package/src/ConsoleShared/src/hooks/useResizeObserver.ts +5 -6
- package/src/ConsoleShared/src/utils/useCombineRefs.ts +2 -3
- package/src/HelpTopicDrawer.tsx +6 -14
- package/src/HelpTopicPanelContent.tsx +57 -49
- package/src/QuickStartCatalogPage.tsx +19 -14
- package/src/QuickStartCloseModal.tsx +2 -2
- package/src/QuickStartController.tsx +3 -5
- package/src/QuickStartDrawer.scss +1 -1
- package/src/QuickStartDrawer.tsx +2 -2
- package/src/QuickStartMarkdownView.tsx +4 -4
- package/src/QuickStartPanelContent.scss +8 -8
- package/src/QuickStartPanelContent.tsx +8 -9
- package/src/catalog/Catalog/QuickStartCatalogHeader.tsx +2 -2
- package/src/catalog/Catalog/QuickStartCatalogSection.tsx +2 -2
- package/src/catalog/Catalog/QuickStartCatalogToolbar.tsx +2 -2
- package/src/catalog/QuickStartCatalog.scss +1 -1
- package/src/catalog/QuickStartCatalog.tsx +2 -2
- package/src/catalog/QuickStartTile.tsx +20 -15
- package/src/catalog/QuickStartTileDescription.scss +4 -4
- package/src/catalog/QuickStartTileDescription.tsx +2 -2
- package/src/catalog/QuickStartTileFooter.tsx +2 -2
- package/src/catalog/QuickStartTileFooterExternal.tsx +2 -2
- package/src/catalog/QuickStartTileHeader.scss +5 -5
- package/src/catalog/QuickStartTileHeader.tsx +2 -2
- package/src/catalog/Toolbar/QuickStartCatalogFilter.scss +9 -9
- package/src/catalog/Toolbar/QuickStartCatalogFilter.tsx +1 -3
- package/src/catalog/Toolbar/QuickStartCatalogFilterItems.tsx +49 -30
- package/src/controller/QuickStartConclusion.tsx +3 -3
- package/src/controller/QuickStartContent.scss +2 -2
- package/src/controller/QuickStartContent.tsx +2 -2
- package/src/controller/QuickStartFooter.scss +3 -3
- package/src/controller/QuickStartFooter.tsx +6 -10
- package/src/controller/QuickStartIntroduction.scss +7 -7
- package/src/controller/QuickStartIntroduction.tsx +5 -7
- package/src/controller/QuickStartTaskHeader.scss +15 -15
- package/src/controller/QuickStartTaskHeader.tsx +14 -12
- package/src/controller/QuickStartTaskHeaderList.scss +1 -1
- package/src/controller/QuickStartTaskHeaderList.tsx +3 -5
- package/src/controller/QuickStartTaskReview.scss +7 -7
- package/src/controller/QuickStartTaskReview.tsx +2 -2
- package/src/controller/QuickStartTasks.scss +13 -13
- package/src/controller/QuickStartTasks.tsx +2 -2
- package/src/controller/__tests__/QuickStartTaskHeader.spec.tsx +4 -17
- package/src/styles/_base.scss +5 -5
- package/src/styles/_dark-custom-override.scss +28 -28
- package/src/styles/legacy-bootstrap/_variables.scss +7 -7
- package/src/styles/patternfly-global.scss +6 -6
- package/src/styles/patternfly-nested.scss +1 -1
- package/src/utils/PluralResolver.ts +29 -23
- package/src/utils/asciidoc-procedure-parser.ts +2 -4
- package/src/utils/help-topic-context.tsx +3 -5
- package/src/utils/help-topic-types.ts +4 -4
- package/src/utils/quick-start-context.tsx +8 -12
- package/src/utils/quick-start-types.ts +15 -14
- package/src/utils/quick-start-utils.ts +2 -6
|
@@ -7,9 +7,10 @@ import {
|
|
|
7
7
|
DrawerHead,
|
|
8
8
|
DrawerPanelBody,
|
|
9
9
|
DrawerPanelContent,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
MenuToggle,
|
|
11
|
+
Select,
|
|
12
|
+
SelectList,
|
|
13
|
+
SelectOption,
|
|
13
14
|
Stack,
|
|
14
15
|
StackItem,
|
|
15
16
|
Title,
|
|
@@ -23,12 +24,12 @@ import ExternalLinkAltIcon from '@patternfly/react-icons/dist/js/icons/external-
|
|
|
23
24
|
import './QuickStartPanelContent.scss';
|
|
24
25
|
import { HelpTopicContext, HelpTopicContextValues } from './utils/help-topic-context';
|
|
25
26
|
|
|
26
|
-
|
|
27
|
+
interface HelpTopicPanelContentProps {
|
|
27
28
|
activeHelpTopic: HelpTopic;
|
|
28
29
|
filteredHelpTopics?: HelpTopic[];
|
|
29
30
|
isResizable?: boolean;
|
|
30
31
|
onClose: () => void;
|
|
31
|
-
}
|
|
32
|
+
}
|
|
32
33
|
|
|
33
34
|
const HelpTopicPanelContent: React.FC<HelpTopicPanelContentProps> = ({
|
|
34
35
|
activeHelpTopic = null,
|
|
@@ -45,21 +46,22 @@ const HelpTopicPanelContent: React.FC<HelpTopicPanelContentProps> = ({
|
|
|
45
46
|
setIsHelpTopicMenuOpen(!isHelpTopicMenuOpen);
|
|
46
47
|
};
|
|
47
48
|
|
|
48
|
-
const onSelectHelpTopic = (
|
|
49
|
-
|
|
50
|
-
|
|
49
|
+
const onSelectHelpTopic = (
|
|
50
|
+
_event?: React.MouseEvent<Element, MouseEvent>,
|
|
51
|
+
value?: string | number,
|
|
52
|
+
) => {
|
|
53
|
+
const topicName = value;
|
|
54
|
+
setActiveHelpTopicByName(topicName.toString());
|
|
51
55
|
toggleHelpTopicMenu();
|
|
52
56
|
};
|
|
53
57
|
|
|
54
|
-
const
|
|
58
|
+
const helpTopicOptions =
|
|
55
59
|
filteredHelpTopics.length > 1 &&
|
|
56
|
-
filteredHelpTopics.map((topic) =>
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
);
|
|
62
|
-
});
|
|
60
|
+
filteredHelpTopics.map((topic) => (
|
|
61
|
+
<SelectOption key={topic.name} value={topic.name}>
|
|
62
|
+
{topic.title}
|
|
63
|
+
</SelectOption>
|
|
64
|
+
));
|
|
63
65
|
|
|
64
66
|
const paddingContainer = (children) => <div style={{ padding: '24px' }}>{children}</div>;
|
|
65
67
|
|
|
@@ -69,26 +71,24 @@ const HelpTopicPanelContent: React.FC<HelpTopicPanelContentProps> = ({
|
|
|
69
71
|
{!!activeHelpTopic?.links?.length && <Divider />}
|
|
70
72
|
{paddingContainer(
|
|
71
73
|
<Stack hasGutter>
|
|
72
|
-
{activeHelpTopic?.links?.map(({ href, text, newTab, isExternal }, index) =>
|
|
73
|
-
|
|
74
|
-
<
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
);
|
|
91
|
-
})}
|
|
74
|
+
{activeHelpTopic?.links?.map(({ href, text, newTab, isExternal }, index) => (
|
|
75
|
+
<StackItem key={index}>
|
|
76
|
+
<Button
|
|
77
|
+
component="a"
|
|
78
|
+
href={href}
|
|
79
|
+
target={newTab ? '_blank' : ''}
|
|
80
|
+
rel="noopener noreferrer"
|
|
81
|
+
variant="link"
|
|
82
|
+
aria-label={`Open documentation in new window`}
|
|
83
|
+
isInline
|
|
84
|
+
icon={isExternal ? <ExternalLinkAltIcon /> : null}
|
|
85
|
+
iconPosition="right"
|
|
86
|
+
style={{ fontSize: 'inherit' }}
|
|
87
|
+
>
|
|
88
|
+
{text || href}
|
|
89
|
+
</Button>
|
|
90
|
+
</StackItem>
|
|
91
|
+
))}
|
|
92
92
|
</Stack>,
|
|
93
93
|
)}
|
|
94
94
|
</>
|
|
@@ -99,27 +99,35 @@ const HelpTopicPanelContent: React.FC<HelpTopicPanelContentProps> = ({
|
|
|
99
99
|
<div>
|
|
100
100
|
<DrawerHead>
|
|
101
101
|
<div className="pfext-quick-start-panel-content__title">
|
|
102
|
-
{
|
|
103
|
-
<
|
|
104
|
-
id={'helptopics'}
|
|
102
|
+
{helpTopicOptions && (
|
|
103
|
+
<Select
|
|
105
104
|
isPlain
|
|
105
|
+
id="help-topics-select"
|
|
106
|
+
selected={activeHelpTopic}
|
|
106
107
|
isOpen={isHelpTopicMenuOpen}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
108
|
+
onSelect={onSelectHelpTopic}
|
|
109
|
+
onOpenChange={(isOpen: boolean) => setIsHelpTopicMenuOpen(isOpen)}
|
|
110
|
+
toggle={(toggleRef) => (
|
|
111
|
+
<MenuToggle
|
|
112
|
+
isFullWidth
|
|
113
|
+
ref={toggleRef}
|
|
114
|
+
icon={<BarsIcon />}
|
|
115
|
+
onClick={toggleHelpTopicMenu}
|
|
116
|
+
isExpanded={isHelpTopicMenuOpen}
|
|
117
|
+
>
|
|
118
|
+
{activeHelpTopic?.title}
|
|
119
|
+
</MenuToggle>
|
|
120
|
+
)}
|
|
121
|
+
>
|
|
122
|
+
<SelectList>{helpTopicOptions}</SelectList>
|
|
123
|
+
</Select>
|
|
116
124
|
)}
|
|
117
125
|
|
|
118
126
|
<Title
|
|
119
127
|
headingLevel="h1"
|
|
120
128
|
size="xl"
|
|
121
129
|
className="pfext-quick-start-panel-content__name"
|
|
122
|
-
style={{ marginRight: 'var(--pf-global--spacer--md)' }}
|
|
130
|
+
style={{ marginRight: 'var(--pf-v5-global--spacer--md)' }}
|
|
123
131
|
>
|
|
124
132
|
{activeHelpTopic?.title}
|
|
125
133
|
</Title>
|
|
@@ -5,9 +5,10 @@ import {
|
|
|
5
5
|
EmptyState,
|
|
6
6
|
EmptyStateBody,
|
|
7
7
|
EmptyStateIcon,
|
|
8
|
-
EmptyStatePrimary,
|
|
9
8
|
Text,
|
|
10
|
-
|
|
9
|
+
EmptyStateFooter,
|
|
10
|
+
EmptyStateActions,
|
|
11
|
+
EmptyStateHeader,
|
|
11
12
|
} from '@patternfly/react-core';
|
|
12
13
|
import SearchIcon from '@patternfly/react-icons/dist/js/icons/search-icon';
|
|
13
14
|
import { EmptyBox, LoadingBox, clearFilterParams } from '@console/internal/components/utils';
|
|
@@ -17,33 +18,37 @@ import { QuickStartContext, QuickStartContextValues } from './utils/quick-start-
|
|
|
17
18
|
import { QuickStart } from './utils/quick-start-types';
|
|
18
19
|
import { filterQuickStarts } from './utils/quick-start-utils';
|
|
19
20
|
|
|
20
|
-
export
|
|
21
|
+
export interface QuickStartCatalogPageProps {
|
|
21
22
|
quickStarts?: QuickStart[];
|
|
22
23
|
showFilter?: boolean;
|
|
23
24
|
sortFnc?: (q1: QuickStart, q2: QuickStart) => number;
|
|
24
25
|
title?: string;
|
|
25
26
|
hint?: string;
|
|
26
27
|
showTitle?: boolean;
|
|
27
|
-
}
|
|
28
|
+
}
|
|
28
29
|
|
|
29
30
|
export const QuickStartCatalogEmptyState = ({ clearFilters }) => {
|
|
30
31
|
const { getResource } = React.useContext<QuickStartContextValues>(QuickStartContext);
|
|
31
32
|
return (
|
|
32
33
|
<EmptyState>
|
|
33
|
-
<
|
|
34
|
-
|
|
35
|
-
{
|
|
36
|
-
|
|
34
|
+
<EmptyStateHeader
|
|
35
|
+
titleText={<>{getResource('No results found')}</>}
|
|
36
|
+
icon={<EmptyStateIcon icon={SearchIcon} />}
|
|
37
|
+
headingLevel="h4"
|
|
38
|
+
/>
|
|
37
39
|
<EmptyStateBody>
|
|
38
40
|
{getResource(
|
|
39
41
|
'No results match the filter criteria. Remove filters or clear all filters to show results.',
|
|
40
42
|
)}
|
|
41
43
|
</EmptyStateBody>
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
|
|
45
|
+
<EmptyStateFooter>
|
|
46
|
+
<EmptyStateActions>
|
|
47
|
+
<Button variant="link" onClick={clearFilters} data-test="clear-filter button">
|
|
48
|
+
{getResource('Clear all filters')}
|
|
49
|
+
</Button>
|
|
50
|
+
</EmptyStateActions>
|
|
51
|
+
</EmptyStateFooter>
|
|
47
52
|
</EmptyState>
|
|
48
53
|
);
|
|
49
54
|
};
|
|
@@ -56,7 +61,7 @@ export const QuickStartCatalogPage: React.FC<QuickStartCatalogPageProps> = ({
|
|
|
56
61
|
hint,
|
|
57
62
|
showTitle = true,
|
|
58
63
|
}) => {
|
|
59
|
-
const sortFncCallback = React.useCallback(sortFnc, []);
|
|
64
|
+
const sortFncCallback = React.useCallback(sortFnc, [sortFnc]);
|
|
60
65
|
const {
|
|
61
66
|
allQuickStarts = [],
|
|
62
67
|
setAllQuickStarts,
|
|
@@ -3,11 +3,11 @@ import { Button, Flex, FlexItem, ModalVariant } from '@patternfly/react-core';
|
|
|
3
3
|
import { Modal } from '@console/shared';
|
|
4
4
|
import { QuickStartContext, QuickStartContextValues } from './utils/quick-start-context';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
interface QuickStartCloseModalProps {
|
|
7
7
|
isOpen: boolean;
|
|
8
8
|
onConfirm: () => void;
|
|
9
9
|
onCancel: () => void;
|
|
10
|
-
}
|
|
10
|
+
}
|
|
11
11
|
|
|
12
12
|
const QuickStartCloseModal: React.FC<QuickStartCloseModalProps> = ({
|
|
13
13
|
isOpen,
|
|
@@ -4,12 +4,12 @@ import QuickStartFooter from './controller/QuickStartFooter';
|
|
|
4
4
|
import { QuickStartContext, QuickStartContextValues } from './utils/quick-start-context';
|
|
5
5
|
import { QuickStart, QuickStartStatus, QuickStartTaskStatus } from './utils/quick-start-types';
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
interface QuickStartControllerProps {
|
|
8
8
|
quickStart: QuickStart;
|
|
9
9
|
nextQuickStarts?: QuickStart[];
|
|
10
10
|
footerClass: string;
|
|
11
11
|
contentRef: React.Ref<HTMLDivElement>;
|
|
12
|
-
}
|
|
12
|
+
}
|
|
13
13
|
|
|
14
14
|
const QuickStartController: React.FC<QuickStartControllerProps> = ({
|
|
15
15
|
quickStart,
|
|
@@ -74,9 +74,7 @@ const QuickStartController: React.FC<QuickStartControllerProps> = ({
|
|
|
74
74
|
return nextStep(totalTasks);
|
|
75
75
|
}, [handleQuickStartChange, nextStep, status, taskNumber, totalTasks, handleQuickStartContinue]);
|
|
76
76
|
|
|
77
|
-
const handleBack = React.useCallback(() =>
|
|
78
|
-
return previousStep();
|
|
79
|
-
}, [previousStep]);
|
|
77
|
+
const handleBack = React.useCallback(() => previousStep(), [previousStep]);
|
|
80
78
|
|
|
81
79
|
const handleTaskSelect = React.useCallback(
|
|
82
80
|
(selectedTaskNumber: number) => {
|
package/src/QuickStartDrawer.tsx
CHANGED
|
@@ -56,7 +56,7 @@ export interface QuickStartContainerProps extends React.HTMLProps<HTMLDivElement
|
|
|
56
56
|
*/
|
|
57
57
|
markdown?: {
|
|
58
58
|
extensions?: any[];
|
|
59
|
-
renderExtension?: (docContext:
|
|
59
|
+
renderExtension?: (docContext: Document, rootSelector: string) => React.ReactNode;
|
|
60
60
|
};
|
|
61
61
|
/** additional quick start context props */
|
|
62
62
|
contextProps?: QuickStartContextValues;
|
|
@@ -252,7 +252,7 @@ export const QuickStartDrawer: React.FC<QuickStartDrawerProps> = ({
|
|
|
252
252
|
</DrawerContentBody>
|
|
253
253
|
</DrawerContent>
|
|
254
254
|
) : (
|
|
255
|
-
<div className="pf-c-drawer__main">{panelContent}</div>
|
|
255
|
+
<div className="pf-v5-c-drawer__main">{panelContent}</div>
|
|
256
256
|
)}
|
|
257
257
|
</Drawer>
|
|
258
258
|
<QuickStartCloseModal
|
|
@@ -15,11 +15,11 @@ import { QuickStartContext, QuickStartContextValues } from './utils/quick-start-
|
|
|
15
15
|
|
|
16
16
|
export const removeParagraphWrap = (markdown: string) => markdown.replace(/^<p>|<\/p>$/g, '');
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
interface QuickStartMarkdownViewProps {
|
|
19
19
|
content: string;
|
|
20
20
|
exactHeight?: boolean;
|
|
21
21
|
className?: string;
|
|
22
|
-
}
|
|
22
|
+
}
|
|
23
23
|
|
|
24
24
|
const QuickStartMarkdownView: React.FC<QuickStartMarkdownViewProps> = ({
|
|
25
25
|
content,
|
|
@@ -45,12 +45,12 @@ const QuickStartMarkdownView: React.FC<QuickStartMarkdownViewProps> = ({
|
|
|
45
45
|
if (!linkLabel || !linkType || !linkId) {
|
|
46
46
|
return text;
|
|
47
47
|
}
|
|
48
|
-
return `<button class="pf-c-button pf-m-inline pf-m-link" data-highlight="${linkId}">${linkLabel}</button>`;
|
|
48
|
+
return `<button class="pf-v5-c-button pf-m-inline pf-m-link" data-highlight="${linkId}">${linkLabel}</button>`;
|
|
49
49
|
},
|
|
50
50
|
},
|
|
51
51
|
{
|
|
52
52
|
type: 'output',
|
|
53
|
-
filter
|
|
53
|
+
filter(text) {
|
|
54
54
|
// check HTML for patterns like: <em>Status: unknown</em>{#extension-requirement-status}
|
|
55
55
|
// and replace with <em id="extension-requirement-status">Status: unknown</em>
|
|
56
56
|
return text.replace(/<em>(.*)<\/em>{#(.*)}/g, '<em id="$2">$1</em>');
|
|
@@ -3,21 +3,21 @@
|
|
|
3
3
|
position: sticky;
|
|
4
4
|
top: 0px;
|
|
5
5
|
background: inherit;
|
|
6
|
-
z-index: var(--pf-global--ZIndex--xs);
|
|
6
|
+
z-index: var(--pf-v5-global--ZIndex--xs);
|
|
7
7
|
&__shadow {
|
|
8
|
-
box-shadow: var(--pf-global--BoxShadow--sm-bottom);
|
|
8
|
+
box-shadow: var(--pf-v5-global--BoxShadow--sm-bottom);
|
|
9
9
|
}
|
|
10
10
|
&--blue-white {
|
|
11
|
-
background-color: var(--pf-global--palette--blue-400);
|
|
11
|
+
background-color: var(--pf-v5-global--palette--blue-400);
|
|
12
12
|
.pfext-quick-start-panel-content__title {
|
|
13
|
-
color: var(--pf-global--Color--light-100);
|
|
13
|
+
color: var(--pf-v5-global--Color--light-100);
|
|
14
14
|
}
|
|
15
15
|
.pfext-quick-start-panel-content__duration {
|
|
16
|
-
color: var(--pf-global--Color--light-200);
|
|
16
|
+
color: var(--pf-v5-global--Color--light-200);
|
|
17
17
|
}
|
|
18
18
|
.pfext-quick-start-panel-content__close-button {
|
|
19
19
|
button {
|
|
20
|
-
color: var(--pf-global--Color--light-100) !important;
|
|
20
|
+
color: var(--pf-v5-global--Color--light-100) !important;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
23
|
}
|
|
@@ -33,14 +33,14 @@
|
|
|
33
33
|
}
|
|
34
34
|
&__duration {
|
|
35
35
|
display: inline-block;
|
|
36
|
-
font-size: var(--pf-global--FontSize--md);
|
|
36
|
+
font-size: var(--pf-v5-global--FontSize--md);
|
|
37
37
|
font-weight: 400;
|
|
38
38
|
line-height: 1;
|
|
39
39
|
color: #9c9c9c;
|
|
40
40
|
}
|
|
41
41
|
&__footer {
|
|
42
42
|
&__shadow {
|
|
43
|
-
box-shadow: var(--pf-global--BoxShadow--sm-top);
|
|
43
|
+
box-shadow: var(--pf-v5-global--BoxShadow--sm-top);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
}
|
|
@@ -20,7 +20,7 @@ import { markdownConvert } from './ConsoleInternal/components/markdown-view';
|
|
|
20
20
|
|
|
21
21
|
type HandleClose = () => void;
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
interface QuickStartPanelContentProps {
|
|
24
24
|
quickStarts: QuickStart[];
|
|
25
25
|
activeQuickStartID: string;
|
|
26
26
|
handleClose: HandleClose;
|
|
@@ -28,7 +28,7 @@ type QuickStartPanelContentProps = {
|
|
|
28
28
|
isResizable?: boolean;
|
|
29
29
|
showClose?: boolean;
|
|
30
30
|
headerVariant?: '' | 'blue-white';
|
|
31
|
-
}
|
|
31
|
+
}
|
|
32
32
|
|
|
33
33
|
const getElement = (appendTo: HTMLElement | (() => HTMLElement)) => {
|
|
34
34
|
if (typeof appendTo === 'function') {
|
|
@@ -56,9 +56,8 @@ const QuickStartPanelContent: React.FC<QuickStartPanelContentProps> = ({
|
|
|
56
56
|
...props
|
|
57
57
|
}) => {
|
|
58
58
|
const titleRef = React.useRef(null);
|
|
59
|
-
const { getResource, activeQuickStartState } =
|
|
60
|
-
QuickStartContext
|
|
61
|
-
);
|
|
59
|
+
const { getResource, activeQuickStartState } =
|
|
60
|
+
React.useContext<QuickStartContextValues>(QuickStartContext);
|
|
62
61
|
const [contentRef, setContentRef] = React.useState<HTMLDivElement>();
|
|
63
62
|
const shadows = useScrollShadows(contentRef);
|
|
64
63
|
const quickStart = quickStarts.find((qs) => qs.metadata.name === activeQuickStartID);
|
|
@@ -81,13 +80,13 @@ const QuickStartPanelContent: React.FC<QuickStartPanelContentProps> = ({
|
|
|
81
80
|
|
|
82
81
|
const getStep = () => {
|
|
83
82
|
const tasks = quickStart.spec.tasks.length;
|
|
84
|
-
if (Number.parseInt(taskNumber as string
|
|
83
|
+
if (Number.parseInt(taskNumber as string) === -1) {
|
|
85
84
|
return 'intro';
|
|
86
85
|
}
|
|
87
|
-
if (Number.parseInt(taskNumber as string
|
|
86
|
+
if (Number.parseInt(taskNumber as string) === tasks) {
|
|
88
87
|
return 'conclusion';
|
|
89
88
|
}
|
|
90
|
-
return Number.parseInt(taskNumber as string
|
|
89
|
+
return Number.parseInt(taskNumber as string) + 1;
|
|
91
90
|
};
|
|
92
91
|
|
|
93
92
|
React.useEffect(() => {
|
|
@@ -112,7 +111,7 @@ const QuickStartPanelContent: React.FC<QuickStartPanelContentProps> = ({
|
|
|
112
111
|
headingLevel="h2"
|
|
113
112
|
size="xl"
|
|
114
113
|
className="pfext-quick-start-panel-content__name"
|
|
115
|
-
style={{ marginRight: 'var(--pf-global--spacer--md)' }}
|
|
114
|
+
style={{ marginRight: 'var(--pf-v5-global--spacer--md)' }}
|
|
116
115
|
>
|
|
117
116
|
<span
|
|
118
117
|
dangerouslySetInnerHTML={{
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
|
-
export
|
|
3
|
+
export interface QuickStartCatalogHeaderProps {
|
|
4
4
|
title: string;
|
|
5
5
|
hint?: string;
|
|
6
|
-
}
|
|
6
|
+
}
|
|
7
7
|
|
|
8
8
|
export const QuickStartCatalogHeader: React.FC<QuickStartCatalogHeaderProps> = ({
|
|
9
9
|
title,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
|
|
3
|
-
export
|
|
3
|
+
export interface QuickStartCatalogSectionProps {
|
|
4
4
|
children: React.ReactNode;
|
|
5
|
-
}
|
|
5
|
+
}
|
|
6
6
|
|
|
7
7
|
export const QuickStartCatalogSection: React.FC<QuickStartCatalogSectionProps> = ({ children }) => (
|
|
8
8
|
<div className="pfext-page-layout__content">{children}</div>
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { Toolbar } from '@patternfly/react-core';
|
|
3
3
|
|
|
4
|
-
export
|
|
4
|
+
export interface QuickStartCatalogToolbarProps {
|
|
5
5
|
children: React.ReactNode;
|
|
6
|
-
}
|
|
6
|
+
}
|
|
7
7
|
|
|
8
8
|
export const QuickStartCatalogToolbar: React.FC<QuickStartCatalogToolbarProps> = ({ children }) => (
|
|
9
9
|
<Toolbar usePageInsets className="pfext-quick-start-catalog-filter__flex">
|
|
@@ -7,9 +7,9 @@ import QuickStartTile from './QuickStartTile';
|
|
|
7
7
|
|
|
8
8
|
import './QuickStartCatalog.scss';
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
interface QuickStartCatalogProps {
|
|
11
11
|
quickStarts: QuickStart[];
|
|
12
|
-
}
|
|
12
|
+
}
|
|
13
13
|
|
|
14
14
|
const QuickStartCatalog: React.FC<QuickStartCatalogProps> = ({ quickStarts }) => {
|
|
15
15
|
const { activeQuickStartID, allQuickStartStates } = React.useContext<QuickStartContextValues>(
|
|
@@ -12,12 +12,12 @@ import QuickStartTileHeader from './QuickStartTileHeader';
|
|
|
12
12
|
|
|
13
13
|
import './QuickStartTile.scss';
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
interface QuickStartTileProps {
|
|
16
16
|
quickStart: QuickStart;
|
|
17
17
|
status: QuickStartStatus;
|
|
18
18
|
isActive: boolean;
|
|
19
19
|
onClick?: () => void;
|
|
20
|
-
}
|
|
20
|
+
}
|
|
21
21
|
|
|
22
22
|
const QuickStartTile: React.FC<QuickStartTileProps> = ({
|
|
23
23
|
quickStart,
|
|
@@ -30,9 +30,8 @@ const QuickStartTile: React.FC<QuickStartTileProps> = ({
|
|
|
30
30
|
spec: { icon, tasks, displayName, description, durationMinutes, prerequisites, link, type },
|
|
31
31
|
} = quickStart;
|
|
32
32
|
|
|
33
|
-
const { setActiveQuickStart, footer } =
|
|
34
|
-
QuickStartContext
|
|
35
|
-
);
|
|
33
|
+
const { setActiveQuickStart, footer } =
|
|
34
|
+
React.useContext<QuickStartContextValues>(QuickStartContext);
|
|
36
35
|
|
|
37
36
|
const ref = React.useRef<HTMLDivElement>(null);
|
|
38
37
|
|
|
@@ -50,14 +49,21 @@ const QuickStartTile: React.FC<QuickStartTileProps> = ({
|
|
|
50
49
|
);
|
|
51
50
|
}
|
|
52
51
|
|
|
53
|
-
const footerComponent =
|
|
54
|
-
footer && footer.show === false
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
)
|
|
52
|
+
const footerComponent = React.useMemo(() => {
|
|
53
|
+
if (footer && footer.show === false) {
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (link) {
|
|
58
|
+
return <QuickStartTileFooterExternal link={link} quickStartId={id} />;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return <QuickStartTileFooter quickStartId={id} status={status} totalTasks={tasks?.length} />;
|
|
62
|
+
}, [footer, id, link, status, tasks?.length]);
|
|
59
63
|
|
|
60
|
-
const handleClick = (
|
|
64
|
+
const handleClick = (
|
|
65
|
+
e: React.FormEvent<HTMLInputElement> | React.MouseEvent<Element, MouseEvent>,
|
|
66
|
+
) => {
|
|
61
67
|
if (ref.current?.contains(e.target as Node)) {
|
|
62
68
|
if (link) {
|
|
63
69
|
window.open(link.href);
|
|
@@ -71,8 +77,7 @@ const QuickStartTile: React.FC<QuickStartTileProps> = ({
|
|
|
71
77
|
return (
|
|
72
78
|
<div ref={ref}>
|
|
73
79
|
<CatalogTile
|
|
74
|
-
|
|
75
|
-
component="div"
|
|
80
|
+
id={id + '-catalog-tile'}
|
|
76
81
|
style={{
|
|
77
82
|
cursor: 'pointer',
|
|
78
83
|
}}
|
|
@@ -97,7 +102,7 @@ const QuickStartTile: React.FC<QuickStartTileProps> = ({
|
|
|
97
102
|
}
|
|
98
103
|
}}
|
|
99
104
|
// https://github.com/patternfly/patternfly-react/issues/7039
|
|
100
|
-
href=
|
|
105
|
+
href={link?.href}
|
|
101
106
|
data-test={`tile ${id}`}
|
|
102
107
|
description={
|
|
103
108
|
<QuickStartTileDescription description={description} prerequisites={prerequisites} />
|
|
@@ -13,12 +13,12 @@
|
|
|
13
13
|
&-prerequisites {
|
|
14
14
|
display: inline-flex;
|
|
15
15
|
&__text {
|
|
16
|
-
margin-right: var(--pf-global--spacer--sm);
|
|
17
|
-
font-size: var(--pf-global--FontSize--md);
|
|
16
|
+
margin-right: var(--pf-v5-global--spacer--sm);
|
|
17
|
+
font-size: var(--pf-v5-global--FontSize--md);
|
|
18
18
|
margin-top: 11.5px;
|
|
19
19
|
margin-bottom: 11.5px;
|
|
20
|
-
font-family: var(--pf-global--FontFamily--heading--sans-serif);
|
|
21
|
-
font-weight: var(--pf-global--FontWeight--normal);
|
|
20
|
+
font-family: var(--pf-v5-global--FontFamily--heading--sans-serif);
|
|
21
|
+
font-weight: var(--pf-v5-global--FontWeight--normal);
|
|
22
22
|
line-height: 1.1;
|
|
23
23
|
}
|
|
24
24
|
|
|
@@ -13,10 +13,10 @@ import { QuickStartContext, QuickStartContextValues } from '../utils/quick-start
|
|
|
13
13
|
|
|
14
14
|
import './QuickStartTileDescription.scss';
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
interface QuickStartTileDescriptionProps {
|
|
17
17
|
description: string;
|
|
18
18
|
prerequisites?: string[];
|
|
19
|
-
}
|
|
19
|
+
}
|
|
20
20
|
const QuickStartTileDescription: React.FC<QuickStartTileDescriptionProps> = ({
|
|
21
21
|
description,
|
|
22
22
|
prerequisites,
|
|
@@ -3,11 +3,11 @@ import { Button, Flex, FlexItem } from '@patternfly/react-core';
|
|
|
3
3
|
import { QuickStartContext, QuickStartContextValues } from '../utils/quick-start-context';
|
|
4
4
|
import { QuickStartStatus } from '../utils/quick-start-types';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
interface QuickStartTileFooterProps {
|
|
7
7
|
quickStartId: string;
|
|
8
8
|
status: string;
|
|
9
9
|
totalTasks?: number;
|
|
10
|
-
}
|
|
10
|
+
}
|
|
11
11
|
|
|
12
12
|
const QuickStartTileFooter: React.FC<QuickStartTileFooterProps> = ({
|
|
13
13
|
quickStartId,
|
|
@@ -3,10 +3,10 @@ import { Button, Flex, FlexItem } from '@patternfly/react-core';
|
|
|
3
3
|
import ExternalLinkAltIcon from '@patternfly/react-icons/dist/js/icons/external-link-alt-icon';
|
|
4
4
|
import { QuickStartExternal } from '../utils/quick-start-types';
|
|
5
5
|
|
|
6
|
-
|
|
6
|
+
interface QuickStartTileFooterProps {
|
|
7
7
|
link: QuickStartExternal;
|
|
8
8
|
quickStartId?: string;
|
|
9
|
-
}
|
|
9
|
+
}
|
|
10
10
|
|
|
11
11
|
const QuickStartTileFooterExternal: React.FC<QuickStartTileFooterProps> = ({
|
|
12
12
|
link,
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
.pfext-quick-start-tile-header {
|
|
2
2
|
&__status {
|
|
3
|
-
margin: var(--pf-global--spacer--sm) 0;
|
|
3
|
+
margin: var(--pf-v5-global--spacer--sm) 0;
|
|
4
4
|
}
|
|
5
5
|
&--margin {
|
|
6
|
-
margin-right: var(--pf-global--spacer--sm);
|
|
7
|
-
margin-bottom: var(--pf-global--spacer--sm);
|
|
6
|
+
margin-right: var(--pf-v5-global--spacer--sm);
|
|
7
|
+
margin-bottom: var(--pf-v5-global--spacer--sm);
|
|
8
8
|
}
|
|
9
|
-
& .pf-c-badge:not(:last-of-type) {
|
|
10
|
-
margin-right: var(--pf-global--spacer--sm);
|
|
9
|
+
& .pf-v5-c-badge:not(:last-of-type) {
|
|
10
|
+
margin-right: var(--pf-v5-global--spacer--sm);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
@@ -7,13 +7,13 @@ import { QuickStartContext, QuickStartContextValues } from '../utils/quick-start
|
|
|
7
7
|
import { QuickStartStatus, QuickStartType } from '../utils/quick-start-types';
|
|
8
8
|
import QuickStartMarkdownView from '../QuickStartMarkdownView';
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
interface QuickStartTileHeaderProps {
|
|
11
11
|
status: string;
|
|
12
12
|
duration: number;
|
|
13
13
|
name: string;
|
|
14
14
|
type?: QuickStartType;
|
|
15
15
|
quickStartId?: string;
|
|
16
|
-
}
|
|
16
|
+
}
|
|
17
17
|
|
|
18
18
|
const statusColorMap = {
|
|
19
19
|
[QuickStartStatus.COMPLETE]: 'green',
|