@patternfly/quickstarts 6.3.0-prerelease.3 → 6.3.0-prerelease.5

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 (129) hide show
  1. package/dist/ConsoleInternal/components/markdown-view.d.ts +2 -2
  2. package/dist/ConsoleInternal/components/utils/camel-case-wrap.d.ts +1 -1
  3. package/dist/ConsoleInternal/components/utils/status-box.d.ts +3 -3
  4. package/dist/ConsoleShared/src/components/markdown-extensions/MarkdownCopyClipboard.d.ts +3 -3
  5. package/dist/ConsoleShared/src/components/markdown-extensions/accordion-render-extension.d.ts +2 -2
  6. package/dist/ConsoleShared/src/components/markdown-highlight-extension/MarkdownHighlightExtension.d.ts +2 -2
  7. package/dist/ConsoleShared/src/components/modal/Modal.d.ts +3 -3
  8. package/dist/ConsoleShared/src/components/popper/Portal.d.ts +3 -3
  9. package/dist/ConsoleShared/src/components/popper/SimplePopper.d.ts +3 -3
  10. package/dist/ConsoleShared/src/components/spotlight/InteractiveSpotlight.d.ts +2 -2
  11. package/dist/ConsoleShared/src/components/spotlight/Spotlight.d.ts +2 -2
  12. package/dist/ConsoleShared/src/components/spotlight/StaticSpotlight.d.ts +2 -2
  13. package/dist/ConsoleShared/src/components/status/GenericStatus.d.ts +4 -4
  14. package/dist/ConsoleShared/src/components/status/NotStartedIcon.d.ts +1 -2
  15. package/dist/ConsoleShared/src/components/status/PopoverStatus.d.ts +4 -4
  16. package/dist/ConsoleShared/src/components/status/Status.d.ts +3 -3
  17. package/dist/ConsoleShared/src/components/status/StatusIconAndText.d.ts +3 -3
  18. package/dist/ConsoleShared/src/components/status/icons.d.ts +4 -4
  19. package/dist/ConsoleShared/src/components/status/statuses.d.ts +4 -4
  20. package/dist/ConsoleShared/src/components/utils/FallbackImg.d.ts +3 -3
  21. package/dist/ConsoleShared/src/utils/useCombineRefs.d.ts +2 -2
  22. package/dist/HelpTopicDrawer.d.ts +3 -3
  23. package/dist/HelpTopicPanelContent.d.ts +2 -2
  24. package/dist/QuickStartCatalogPage.d.ts +3 -3
  25. package/dist/QuickStartCloseModal.d.ts +2 -2
  26. package/dist/QuickStartContainer.d.ts +2 -2
  27. package/dist/QuickStartController.d.ts +2 -2
  28. package/dist/QuickStartDrawer.d.ts +2 -2
  29. package/dist/QuickStartDrawerContent.d.ts +2 -2
  30. package/dist/QuickStartMarkdownView.d.ts +2 -2
  31. package/dist/QuickStartPanelContent.d.ts +2 -2
  32. package/dist/catalog/Catalog/QuickStartCatalogHeader.d.ts +2 -2
  33. package/dist/catalog/Catalog/QuickStartCatalogSection.d.ts +2 -2
  34. package/dist/catalog/Catalog/QuickStartCatalogToolbar.d.ts +2 -2
  35. package/dist/catalog/QuickStartCatalog.d.ts +2 -2
  36. package/dist/catalog/QuickStartTile.d.ts +2 -2
  37. package/dist/catalog/QuickStartTileDescription.d.ts +2 -2
  38. package/dist/catalog/QuickStartTileFooter.d.ts +2 -2
  39. package/dist/catalog/QuickStartTileFooterExternal.d.ts +2 -2
  40. package/dist/catalog/QuickStartTileHeader.d.ts +2 -2
  41. package/dist/catalog/Toolbar/QuickStartCatalogFilter.d.ts +2 -2
  42. package/dist/catalog/Toolbar/QuickStartCatalogFilterItems.d.ts +7 -7
  43. package/dist/controller/QuickStartConclusion.d.ts +2 -2
  44. package/dist/controller/QuickStartContent.d.ts +2 -2
  45. package/dist/controller/QuickStartFooter.d.ts +2 -2
  46. package/dist/controller/QuickStartIntroduction.d.ts +2 -2
  47. package/dist/controller/QuickStartTaskHeader.d.ts +2 -2
  48. package/dist/controller/QuickStartTaskHeaderList.d.ts +2 -2
  49. package/dist/controller/QuickStartTaskReview.d.ts +2 -2
  50. package/dist/controller/QuickStartTasks.d.ts +2 -2
  51. package/dist/index.es.js +299 -459
  52. package/dist/index.es.js.map +1 -1
  53. package/dist/index.js +310 -472
  54. package/dist/index.js.map +1 -1
  55. package/dist/quickstarts-full.es.js +1693 -511
  56. package/dist/quickstarts-full.es.js.map +1 -1
  57. package/dist/utils/help-topic-context.d.ts +2 -2
  58. package/dist/utils/quick-start-context.d.ts +3 -3
  59. package/package.json +4 -5
  60. package/src/ConsoleInternal/components/markdown-view.tsx +20 -18
  61. package/src/ConsoleInternal/components/utils/camel-case-wrap.tsx +3 -3
  62. package/src/ConsoleInternal/components/utils/status-box.tsx +4 -4
  63. package/src/ConsoleShared/src/components/markdown-extensions/MarkdownCopyClipboard.tsx +8 -15
  64. package/src/ConsoleShared/src/components/markdown-extensions/__tests__/MarkdownCopyClipboard.spec.tsx +0 -1
  65. package/src/ConsoleShared/src/components/markdown-extensions/accordion-extension.tsx +2 -2
  66. package/src/ConsoleShared/src/components/markdown-extensions/accordion-render-extension.tsx +4 -4
  67. package/src/ConsoleShared/src/components/markdown-extensions/admonition-extension.tsx +2 -2
  68. package/src/ConsoleShared/src/components/markdown-extensions/code-extension.tsx +2 -2
  69. package/src/ConsoleShared/src/components/markdown-extensions/inline-clipboard-extension.tsx +3 -3
  70. package/src/ConsoleShared/src/components/markdown-extensions/multiline-clipboard-extension.tsx +3 -3
  71. package/src/ConsoleShared/src/components/markdown-highlight-extension/MarkdownHighlightExtension.tsx +5 -5
  72. package/src/ConsoleShared/src/components/modal/Modal.tsx +3 -3
  73. package/src/ConsoleShared/src/components/popper/Portal.tsx +5 -5
  74. package/src/ConsoleShared/src/components/popper/SimplePopper.tsx +15 -15
  75. package/src/ConsoleShared/src/components/spotlight/InteractiveSpotlight.tsx +5 -5
  76. package/src/ConsoleShared/src/components/spotlight/Spotlight.tsx +3 -3
  77. package/src/ConsoleShared/src/components/spotlight/StaticSpotlight.tsx +3 -3
  78. package/src/ConsoleShared/src/components/status/GenericStatus.tsx +5 -5
  79. package/src/ConsoleShared/src/components/status/NotStartedIcon.tsx +0 -1
  80. package/src/ConsoleShared/src/components/status/PopoverStatus.tsx +4 -4
  81. package/src/ConsoleShared/src/components/status/Status.tsx +3 -11
  82. package/src/ConsoleShared/src/components/status/StatusIconAndText.tsx +6 -6
  83. package/src/ConsoleShared/src/components/status/icons.tsx +4 -8
  84. package/src/ConsoleShared/src/components/status/statuses.tsx +4 -5
  85. package/src/ConsoleShared/src/components/utils/FallbackImg.tsx +4 -4
  86. package/src/ConsoleShared/src/hooks/scroll.ts +4 -4
  87. package/src/ConsoleShared/src/hooks/useBoundingClientRect.ts +3 -3
  88. package/src/ConsoleShared/src/hooks/useForceRender.ts +2 -2
  89. package/src/ConsoleShared/src/hooks/useResizeObserver.ts +3 -6
  90. package/src/ConsoleShared/src/hooks/useScrollShadows.ts +4 -4
  91. package/src/ConsoleShared/src/utils/useCombineRefs.ts +4 -4
  92. package/src/HelpTopicDrawer.tsx +6 -6
  93. package/src/HelpTopicPanelContent.tsx +4 -4
  94. package/src/QuickStartCatalogPage.tsx +9 -9
  95. package/src/QuickStartCloseModal.tsx +3 -7
  96. package/src/QuickStartContainer.tsx +4 -4
  97. package/src/QuickStartController.tsx +11 -11
  98. package/src/QuickStartDrawer.tsx +6 -6
  99. package/src/QuickStartDrawerContent.tsx +3 -3
  100. package/src/QuickStartMarkdownView.tsx +3 -3
  101. package/src/QuickStartPanelContent.tsx +8 -8
  102. package/src/catalog/Catalog/QuickStartCatalogHeader.tsx +2 -2
  103. package/src/catalog/Catalog/QuickStartCatalogSection.tsx +2 -2
  104. package/src/catalog/Catalog/QuickStartCatalogToolbar.tsx +2 -2
  105. package/src/catalog/QuickStartCatalog.tsx +3 -3
  106. package/src/catalog/QuickStartTile.tsx +4 -4
  107. package/src/catalog/QuickStartTileDescription.tsx +4 -4
  108. package/src/catalog/QuickStartTileFooter.tsx +6 -6
  109. package/src/catalog/QuickStartTileFooterExternal.tsx +2 -5
  110. package/src/catalog/QuickStartTileHeader.tsx +2 -6
  111. package/src/catalog/Toolbar/QuickStartCatalogFilter.tsx +2 -2
  112. package/src/catalog/Toolbar/QuickStartCatalogFilterItems.tsx +16 -16
  113. package/src/catalog/__tests__/QuickStartCatalog.spec.tsx +0 -1
  114. package/src/catalog/__tests__/QuickStartTile.spec.tsx +0 -1
  115. package/src/catalog/__tests__/QuickStartTileDescription.spec.tsx +1 -2
  116. package/src/controller/QuickStartConclusion.tsx +3 -3
  117. package/src/controller/QuickStartContent.tsx +2 -2
  118. package/src/controller/QuickStartFooter.tsx +10 -11
  119. package/src/controller/QuickStartIntroduction.tsx +4 -4
  120. package/src/controller/QuickStartTaskHeader.tsx +5 -5
  121. package/src/controller/QuickStartTaskHeaderList.tsx +2 -2
  122. package/src/controller/QuickStartTaskReview.tsx +4 -4
  123. package/src/controller/QuickStartTasks.tsx +5 -5
  124. package/src/controller/__tests__/QuickStartConclusion.spec.tsx +3 -3
  125. package/src/controller/__tests__/QuickStartContent.spec.tsx +2 -2
  126. package/src/controller/__tests__/QuickStartTaskHeader.spec.tsx +2 -2
  127. package/src/controller/__tests__/QuickStartTaskReview.spec.tsx +2 -2
  128. package/src/utils/help-topic-context.tsx +7 -10
  129. package/src/utils/quick-start-context.tsx +11 -11
@@ -1,9 +1,9 @@
1
- import * as React from 'react';
1
+ import { Children, ComponentType, FC, ReactNode } from 'react';
2
2
  import PopoverStatus from './PopoverStatus';
3
3
  import StatusIconAndText from './StatusIconAndText';
4
4
  import { StatusComponentProps } from './types';
5
5
 
6
- const GenericStatus: React.FC<GenericStatusProps> = (props) => {
6
+ const GenericStatus: FC<GenericStatusProps> = (props) => {
7
7
  const { Icon, children, popoverTitle, title, noTooltip, iconOnly, ...restProps } = props;
8
8
  const renderIcon = iconOnly && !noTooltip ? <Icon title={title} /> : <Icon />;
9
9
  const statusBody = (
@@ -15,7 +15,7 @@ const GenericStatus: React.FC<GenericStatusProps> = (props) => {
15
15
  icon={renderIcon}
16
16
  />
17
17
  );
18
- return React.Children.toArray(children).length ? (
18
+ return Children.toArray(children).length ? (
19
19
  <PopoverStatus title={popoverTitle || title} {...restProps} statusBody={statusBody}>
20
20
  {children}
21
21
  </PopoverStatus>
@@ -25,8 +25,8 @@ const GenericStatus: React.FC<GenericStatusProps> = (props) => {
25
25
  };
26
26
 
27
27
  type GenericStatusProps = StatusComponentProps & {
28
- Icon: React.ComponentType<{ title?: string }>;
29
- children?: React.ReactNode;
28
+ Icon: ComponentType<{ title?: string }>;
29
+ children?: ReactNode;
30
30
  popoverTitle?: string;
31
31
  noTooltip?: boolean;
32
32
  };
@@ -1,6 +1,5 @@
1
1
  // TODO: Pull from Patternfly when they add it
2
2
  // https://github.com/patternfly/patternfly-design/issues/921#issuecomment-726183814
3
- import * as React from 'react';
4
3
 
5
4
  export default (props) => (
6
5
  <svg
@@ -1,7 +1,7 @@
1
- import * as React from 'react';
1
+ import { FC, ReactNode } from 'react';
2
2
  import { Button, Popover, PopoverPosition } from '@patternfly/react-core';
3
3
 
4
- const PopoverStatus: React.FC<PopoverStatusProps> = ({
4
+ const PopoverStatus: FC<PopoverStatusProps> = ({
5
5
  hideHeader,
6
6
  children,
7
7
  isVisible = null,
@@ -26,8 +26,8 @@ const PopoverStatus: React.FC<PopoverStatusProps> = ({
26
26
  );
27
27
 
28
28
  interface PopoverStatusProps {
29
- children: React.ReactNode;
30
- statusBody: React.ReactNode;
29
+ children: ReactNode;
30
+ statusBody: ReactNode;
31
31
  onHide?: (event: MouseEvent | KeyboardEvent) => void;
32
32
  onShow?: (event: MouseEvent | KeyboardEvent) => void;
33
33
  title?: string;
@@ -1,17 +1,11 @@
1
- import * as React from 'react';
1
+ import { FC } from 'react';
2
2
  import SyncAltIcon from '@patternfly/react-icons/dist/js/icons/sync-alt-icon';
3
3
  import { DASH } from '../../constants';
4
4
  import { SuccessStatus } from './statuses';
5
5
  import StatusIconAndText from './StatusIconAndText';
6
6
  import { StatusComponentProps } from './types';
7
7
 
8
- export const Status: React.FC<StatusProps> = ({
9
- status,
10
- title,
11
- iconOnly,
12
- noTooltip,
13
- className,
14
- }) => {
8
+ export const Status: FC<StatusProps> = ({ status, title, iconOnly, noTooltip, className }) => {
15
9
  const statusProps = { title: title || status, iconOnly, noTooltip, className };
16
10
  switch (status) {
17
11
  case 'In Progress':
@@ -25,9 +19,7 @@ export const Status: React.FC<StatusProps> = ({
25
19
  }
26
20
  };
27
21
 
28
- export const StatusIcon: React.FC<StatusIconProps> = ({ status }) => (
29
- <Status status={status} iconOnly />
30
- );
22
+ export const StatusIcon: FC<StatusIconProps> = ({ status }) => <Status status={status} iconOnly />;
31
23
 
32
24
  interface StatusIconProps {
33
25
  status: string;
@@ -1,15 +1,15 @@
1
- import * as React from 'react';
1
+ import { cloneElement, FC, ReactElement } from 'react';
2
2
  import { css } from '@patternfly/react-styles';
3
3
  import { CamelCaseWrap } from '@console/internal/components/utils';
4
4
  import { DASH } from '../../constants';
5
5
  import { StatusComponentProps } from './types';
6
6
 
7
7
  type StatusIconAndTextProps = StatusComponentProps & {
8
- icon?: React.ReactElement;
8
+ icon?: ReactElement<any>;
9
9
  spin?: boolean;
10
10
  };
11
11
 
12
- const StatusIconAndText: React.FC<StatusIconAndTextProps> = ({
12
+ const StatusIconAndText: FC<StatusIconAndTextProps> = ({
13
13
  icon,
14
14
  title,
15
15
  spin,
@@ -27,13 +27,13 @@ const StatusIconAndText: React.FC<StatusIconAndTextProps> = ({
27
27
  title={iconOnly && !noTooltip ? title : undefined}
28
28
  >
29
29
  {icon &&
30
- React.cloneElement(icon, {
30
+ cloneElement(icon, {
31
31
  className: css(
32
32
  spin && 'fa-spin',
33
- icon.props.className,
33
+ (icon.props as any).className,
34
34
  !iconOnly && 'pfext-icon-and-text__icon pfext-icon-flex-child',
35
35
  ),
36
- })}
36
+ } as any)}
37
37
  {!iconOnly && <CamelCaseWrap value={title} dataTest="status-text" />}
38
38
  </span>
39
39
  );
@@ -1,26 +1,22 @@
1
- import * as React from 'react';
1
+ import { FC } from 'react';
2
2
  import CheckCircleIcon from '@patternfly/react-icons/dist/js/icons/check-circle-icon';
3
3
  import ExclamationCircleIcon from '@patternfly/react-icons/dist/js/icons/exclamation-circle-icon';
4
4
  import InfoCircleIcon from '@patternfly/react-icons/dist/js/icons/info-circle-icon';
5
5
  import { Icon } from '@patternfly/react-core';
6
6
 
7
- export const GreenCheckCircleIcon: React.FC<ColoredIconProps> = ({ className, title, size }) => (
7
+ export const GreenCheckCircleIcon: FC<ColoredIconProps> = ({ className, title, size }) => (
8
8
  <Icon size={size} status="success">
9
9
  <CheckCircleIcon data-test="success-icon" className={className} title={title} />
10
10
  </Icon>
11
11
  );
12
12
 
13
- export const RedExclamationCircleIcon: React.FC<ColoredIconProps> = ({
14
- className,
15
- title,
16
- size,
17
- }) => (
13
+ export const RedExclamationCircleIcon: FC<ColoredIconProps> = ({ className, title, size }) => (
18
14
  <Icon size={size} status="danger">
19
15
  <ExclamationCircleIcon className={className} title={title} />
20
16
  </Icon>
21
17
  );
22
18
 
23
- export const BlueInfoCircleIcon: React.FC<ColoredIconProps> = ({ className, title }) => (
19
+ export const BlueInfoCircleIcon: FC<ColoredIconProps> = ({ className, title }) => (
24
20
  <Icon status="info">
25
21
  <InfoCircleIcon className={className} title={title} />
26
22
  </Icon>
@@ -1,20 +1,19 @@
1
- import * as React from 'react';
2
-
1
+ import { FC } from 'react';
3
2
  import GenericStatus from './GenericStatus';
4
3
  import { BlueInfoCircleIcon, GreenCheckCircleIcon, RedExclamationCircleIcon } from './icons';
5
4
  import { StatusComponentProps } from './types';
6
5
 
7
- export const ErrorStatus: React.FC<StatusComponentProps> = (props) => (
6
+ export const ErrorStatus: FC<StatusComponentProps> = (props) => (
8
7
  <GenericStatus {...props} Icon={RedExclamationCircleIcon} title={props.title || 'Error'} />
9
8
  );
10
9
  ErrorStatus.displayName = 'ErrorStatus';
11
10
 
12
- export const InfoStatus: React.FC<StatusComponentProps> = (props) => (
11
+ export const InfoStatus: FC<StatusComponentProps> = (props) => (
13
12
  <GenericStatus {...props} Icon={BlueInfoCircleIcon} title={props.title || 'Information'} />
14
13
  );
15
14
  InfoStatus.displayName = 'InfoStatus';
16
15
 
17
- export const SuccessStatus: React.FC<StatusComponentProps> = (props) => (
16
+ export const SuccessStatus: FC<StatusComponentProps> = (props) => (
18
17
  <GenericStatus {...props} Icon={GreenCheckCircleIcon} title={props.title || 'Healthy'} />
19
18
  );
20
19
  SuccessStatus.displayName = 'SuccessStatus';
@@ -1,14 +1,14 @@
1
- import * as React from 'react';
1
+ import { FC, ReactNode, useState } from 'react';
2
2
 
3
3
  interface FallbackImgProps {
4
4
  src: string;
5
5
  alt?: string;
6
6
  className?: string;
7
- fallback?: React.ReactNode;
7
+ fallback?: ReactNode;
8
8
  }
9
9
 
10
- const FallbackImg: React.FC<FallbackImgProps> = ({ src, alt, className, fallback }) => {
11
- const [isSrcValid, setIsSrcValid] = React.useState<boolean>(true);
10
+ const FallbackImg: FC<FallbackImgProps> = ({ src, alt, className, fallback }) => {
11
+ const [isSrcValid, setIsSrcValid] = useState<boolean>(true);
12
12
 
13
13
  if (src && isSrcValid) {
14
14
  return <img className={className} src={src} alt={alt} onError={() => setIsSrcValid(false)} />;
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { useCallback, useRef, useState } from 'react';
2
2
 
3
3
  export enum ScrollDirection {
4
4
  scrollingUp = 'scrolling-up',
@@ -27,9 +27,9 @@ export const getScrollDirection = (
27
27
  };
28
28
 
29
29
  export const useScrollDirection = (): [ScrollDirection, (event) => void] => {
30
- const scrollPosition = React.useRef<number>(null);
31
- const [scrollDirection, setScrollDirection] = React.useState<ScrollDirection>(null);
32
- const handleScroll = React.useCallback(
30
+ const scrollPosition = useRef<number>(null);
31
+ const [scrollDirection, setScrollDirection] = useState<ScrollDirection>(null);
32
+ const handleScroll = useCallback(
33
33
  (event) => {
34
34
  const { scrollHeight, scrollTop, clientHeight } = event.target;
35
35
  if (scrollPosition.current !== null) {
@@ -1,14 +1,14 @@
1
- import * as React from 'react';
1
+ import { useCallback, useState } from 'react';
2
2
  import { useResizeObserver } from './useResizeObserver';
3
3
 
4
4
  type BoundingClientRect = ClientRect | null;
5
5
 
6
6
  export const useBoundingClientRect = (targetElement: HTMLElement | null): BoundingClientRect => {
7
- const [clientRect, setClientRect] = React.useState<BoundingClientRect>(() =>
7
+ const [clientRect, setClientRect] = useState<BoundingClientRect>(() =>
8
8
  targetElement ? targetElement.getBoundingClientRect() : null,
9
9
  );
10
10
 
11
- const observerCallback = React.useCallback(() => {
11
+ const observerCallback = useCallback(() => {
12
12
  setClientRect(targetElement ? targetElement.getBoundingClientRect() : null);
13
13
  }, [targetElement]);
14
14
 
@@ -1,6 +1,6 @@
1
- import * as React from 'react';
1
+ import { useReducer } from 'react';
2
2
 
3
3
  /**
4
4
  * React hook that forces component render.
5
5
  */
6
- export const useForceRender = () => React.useReducer((s: boolean) => !s, false)[1] as VoidFunction;
6
+ export const useForceRender = () => useReducer((s: boolean) => !s, false)[1] as VoidFunction;
@@ -1,15 +1,12 @@
1
- import * as React from 'react';
1
+ import { useEffect, useMemo } from 'react';
2
2
 
3
3
  export const useResizeObserver = (
4
4
  callback: ResizeObserverCallback,
5
5
  targetElement?: HTMLElement | null,
6
6
  observerOptions: ResizeObserverOptions = undefined,
7
7
  ): void => {
8
- const element = React.useMemo(
9
- () => targetElement ?? document.querySelector('body'),
10
- [targetElement],
11
- );
12
- React.useEffect(() => {
8
+ const element = useMemo(() => targetElement ?? document.querySelector('body'), [targetElement]);
9
+ useEffect(() => {
13
10
  const observer = new ResizeObserver(callback);
14
11
  observer.observe(element, observerOptions);
15
12
  return () => {
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { useCallback, useEffect, useState } from 'react';
2
2
  import { useResizeObserver } from './useResizeObserver';
3
3
 
4
4
  export enum Shadows {
@@ -9,8 +9,8 @@ export enum Shadows {
9
9
  }
10
10
 
11
11
  export const useScrollShadows = (node: HTMLElement): Shadows => {
12
- const [shadows, setShadows] = React.useState(Shadows.none);
13
- const computeShadows = React.useCallback(() => {
12
+ const [shadows, setShadows] = useState(Shadows.none);
13
+ const computeShadows = useCallback(() => {
14
14
  if (node) {
15
15
  const { scrollTop, clientHeight, scrollHeight } = node;
16
16
  const top = scrollTop !== 0;
@@ -28,7 +28,7 @@ export const useScrollShadows = (node: HTMLElement): Shadows => {
28
28
  }, [node]);
29
29
  // recompute when the scroll container changes in size
30
30
  useResizeObserver(computeShadows, node);
31
- React.useEffect(() => {
31
+ useEffect(() => {
32
32
  if (node) {
33
33
  // compute initial shadows
34
34
  computeShadows();
@@ -1,14 +1,14 @@
1
- import * as React from 'react';
1
+ import { MutableRefObject, Ref, useCallback } from 'react';
2
2
 
3
- export const useCombineRefs = <RefType>(...refs: (React.Ref<RefType> | undefined)[]) =>
4
- React.useCallback(
3
+ export const useCombineRefs = <RefType>(...refs: (Ref<RefType> | undefined)[]) =>
4
+ useCallback(
5
5
  (element: RefType | null): void =>
6
6
  refs.forEach((ref) => {
7
7
  if (ref) {
8
8
  if (typeof ref === 'function') {
9
9
  ref(element);
10
10
  } else {
11
- (ref as React.MutableRefObject<any>).current = element;
11
+ (ref as MutableRefObject<any>).current = element;
12
12
  }
13
13
  }
14
14
  }),
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useContext, useEffect } from 'react';
2
2
  import { Drawer, DrawerContent, DrawerContentBody } from '@patternfly/react-core';
3
3
  import HelpTopicPanelContent from './HelpTopicPanelContent';
4
4
  import {
@@ -33,7 +33,7 @@ export interface HelpTopicContainerProps extends React.HTMLProps<HTMLDivElement>
33
33
  children?: React.ReactNode;
34
34
  }
35
35
 
36
- export const HelpTopicContainer: React.FC<HelpTopicContainerProps> = ({
36
+ export const HelpTopicContainer: FC<HelpTopicContainerProps> = ({
37
37
  helpTopics,
38
38
  children,
39
39
  resourceBundle,
@@ -54,13 +54,13 @@ export const HelpTopicContainer: React.FC<HelpTopicContainerProps> = ({
54
54
  ...contextProps,
55
55
  });
56
56
 
57
- React.useEffect(() => {
57
+ useEffect(() => {
58
58
  if (loading !== valuesForHelpTopicContext.loading) {
59
59
  valuesForHelpTopicContext.setLoading(loading);
60
60
  }
61
61
  }, [loading, valuesForHelpTopicContext]);
62
62
 
63
- React.useEffect(() => {
63
+ useEffect(() => {
64
64
  if (
65
65
  helpTopics &&
66
66
  JSON.stringify(helpTopics) !== JSON.stringify(valuesForHelpTopicContext.helpTopics)
@@ -81,9 +81,9 @@ export interface HelpTopicDrawerProps extends React.HTMLProps<HTMLDivElement> {
81
81
  children?: React.ReactNode;
82
82
  }
83
83
 
84
- export const HelpTopicDrawer: React.FC<HelpTopicDrawerProps> = ({ children, ...props }) => {
84
+ export const HelpTopicDrawer: FC<HelpTopicDrawerProps> = ({ children, ...props }) => {
85
85
  const { activeHelpTopic, filteredHelpTopics, setActiveHelpTopicByName } =
86
- React.useContext<HelpTopicContextValues>(HelpTopicContext);
86
+ useContext<HelpTopicContextValues>(HelpTopicContext);
87
87
 
88
88
  const onClose = () => {
89
89
  setActiveHelpTopicByName('');
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useContext, useState } from 'react';
2
2
  import {
3
3
  Button,
4
4
  Divider,
@@ -30,16 +30,16 @@ interface HelpTopicPanelContentProps {
30
30
  onClose: () => void;
31
31
  }
32
32
 
33
- const HelpTopicPanelContent: React.FC<HelpTopicPanelContentProps> = ({
33
+ const HelpTopicPanelContent: FC<HelpTopicPanelContentProps> = ({
34
34
  activeHelpTopic = null,
35
35
  filteredHelpTopics = [],
36
36
  isResizable = true,
37
37
  onClose,
38
38
  ...props
39
39
  }) => {
40
- const { setActiveHelpTopicByName } = React.useContext<HelpTopicContextValues>(HelpTopicContext);
40
+ const { setActiveHelpTopicByName } = useContext<HelpTopicContextValues>(HelpTopicContext);
41
41
 
42
- const [isHelpTopicMenuOpen, setIsHelpTopicMenuOpen] = React.useState(false);
42
+ const [isHelpTopicMenuOpen, setIsHelpTopicMenuOpen] = useState(false);
43
43
 
44
44
  const toggleHelpTopicMenu = () => {
45
45
  setIsHelpTopicMenuOpen(!isHelpTopicMenuOpen);
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useCallback, useContext, useEffect, useState } from 'react';
2
2
  import {
3
3
  Button,
4
4
  Content,
@@ -28,11 +28,11 @@ export interface QuickStartCatalogPageProps {
28
28
  }
29
29
 
30
30
  export const QuickStartCatalogEmptyState = ({ clearFilters }) => {
31
- const { getResource } = React.useContext<QuickStartContextValues>(QuickStartContext);
31
+ const { getResource } = useContext<QuickStartContextValues>(QuickStartContext);
32
32
  return (
33
33
  <EmptyState
34
34
  headingLevel="h4"
35
- icon={SearchIcon}
35
+ icon={SearchIcon as any}
36
36
  titleText={<>{getResource('No results found')}</>}
37
37
  >
38
38
  <EmptyStateBody>
@@ -52,7 +52,7 @@ export const QuickStartCatalogEmptyState = ({ clearFilters }) => {
52
52
  );
53
53
  };
54
54
 
55
- export const QuickStartCatalogPage: React.FC<QuickStartCatalogPageProps> = ({
55
+ export const QuickStartCatalogPage: FC<QuickStartCatalogPageProps> = ({
56
56
  quickStarts,
57
57
  showFilter,
58
58
  sortFnc = (q1, q2) => q1.spec.displayName.localeCompare(q2.spec.displayName),
@@ -60,7 +60,7 @@ export const QuickStartCatalogPage: React.FC<QuickStartCatalogPageProps> = ({
60
60
  hint,
61
61
  showTitle = true,
62
62
  }) => {
63
- const sortFncCallback = React.useCallback(sortFnc, [sortFnc]);
63
+ const sortFncCallback = useCallback(sortFnc, [sortFnc]);
64
64
  const {
65
65
  allQuickStarts = [],
66
66
  setAllQuickStarts,
@@ -69,9 +69,9 @@ export const QuickStartCatalogPage: React.FC<QuickStartCatalogPageProps> = ({
69
69
  filter,
70
70
  setFilter,
71
71
  loading,
72
- } = React.useContext<QuickStartContextValues>(QuickStartContext);
72
+ } = useContext<QuickStartContextValues>(QuickStartContext);
73
73
 
74
- React.useEffect(() => {
74
+ useEffect(() => {
75
75
  // passed through prop, not context
76
76
  if (quickStarts && JSON.stringify(quickStarts) !== JSON.stringify(allQuickStarts)) {
77
77
  setAllQuickStarts(quickStarts);
@@ -87,8 +87,8 @@ export const QuickStartCatalogPage: React.FC<QuickStartCatalogPageProps> = ({
87
87
  ).sort(sortFncCallback)
88
88
  : allQuickStarts;
89
89
 
90
- const [filteredQuickStarts, setFilteredQuickStarts] = React.useState(initialFilteredQuickStarts);
91
- React.useEffect(() => {
90
+ const [filteredQuickStarts, setFilteredQuickStarts] = useState(initialFilteredQuickStarts);
91
+ useEffect(() => {
92
92
  const filteredQs = showFilter
93
93
  ? filterQuickStarts(
94
94
  allQuickStarts,
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useContext } from 'react';
2
2
  import { Button, Flex, FlexItem } from '@patternfly/react-core';
3
3
  import { ModalVariant } from '@patternfly/react-core/deprecated';
4
4
  import { Modal } from '@console/shared';
@@ -10,12 +10,8 @@ interface QuickStartCloseModalProps {
10
10
  onCancel: () => void;
11
11
  }
12
12
 
13
- const QuickStartCloseModal: React.FC<QuickStartCloseModalProps> = ({
14
- isOpen,
15
- onConfirm,
16
- onCancel,
17
- }) => {
18
- const { getResource } = React.useContext<QuickStartContextValues>(QuickStartContext);
13
+ const QuickStartCloseModal: FC<QuickStartCloseModalProps> = ({ isOpen, onConfirm, onCancel }) => {
14
+ const { getResource } = useContext<QuickStartContextValues>(QuickStartContext);
19
15
  return (
20
16
  <Modal
21
17
  isOpen={isOpen}
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useEffect } from 'react';
2
2
  import {
3
3
  QuickStartContext,
4
4
  QuickStartContextValues,
@@ -58,7 +58,7 @@ export interface QuickStartContainerProps extends React.HTMLProps<HTMLDivElement
58
58
  isManagedDrawer?: boolean;
59
59
  }
60
60
 
61
- export const QuickStartContainer: React.FC<QuickStartContainerProps> = ({
61
+ export const QuickStartContainer: FC<QuickStartContainerProps> = ({
62
62
  quickStarts,
63
63
  children,
64
64
  activeQuickStartID,
@@ -105,7 +105,7 @@ export const QuickStartContainer: React.FC<QuickStartContainerProps> = ({
105
105
  ...contextProps,
106
106
  });
107
107
 
108
- React.useEffect(() => {
108
+ useEffect(() => {
109
109
  if (
110
110
  quickStarts &&
111
111
  JSON.stringify(quickStarts) !== JSON.stringify(valuesForQuickstartContext.allQuickStarts)
@@ -114,7 +114,7 @@ export const QuickStartContainer: React.FC<QuickStartContainerProps> = ({
114
114
  }
115
115
  }, [quickStarts, valuesForQuickstartContext]);
116
116
 
117
- React.useEffect(() => {
117
+ useEffect(() => {
118
118
  if (loading !== valuesForQuickstartContext.loading) {
119
119
  valuesForQuickstartContext.setLoading(loading);
120
120
  }
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useCallback, useContext, useEffect } from 'react';
2
2
  import QuickStartContent from './controller/QuickStartContent';
3
3
  import QuickStartFooter from './controller/QuickStartFooter';
4
4
  import {
@@ -19,7 +19,7 @@ interface QuickStartControllerProps {
19
19
  contentRef?: React.Ref<HTMLDivElement>;
20
20
  }
21
21
 
22
- export const QuickStartController: React.FC<QuickStartControllerProps> = ({
22
+ export const QuickStartController: FC<QuickStartControllerProps> = ({
23
23
  quickStart,
24
24
  nextQuickStarts,
25
25
  contentRef,
@@ -40,8 +40,8 @@ export const QuickStartController: React.FC<QuickStartControllerProps> = ({
40
40
  setQuickStartTaskStatus,
41
41
  nextStep,
42
42
  previousStep,
43
- } = React.useContext<QuickStartContextValues>(QuickStartContext);
44
- React.useEffect(() => {
43
+ } = useContext<QuickStartContextValues>(QuickStartContext);
44
+ useEffect(() => {
45
45
  // If activeQuickStartID was changed through prop from QuickStartContainer, need to init the state if it does not exist yet
46
46
  if (activeQuickStartID && !allQuickStartStates[activeQuickStartID]) {
47
47
  setAllQuickStartStates({
@@ -57,17 +57,17 @@ export const QuickStartController: React.FC<QuickStartControllerProps> = ({
57
57
  (task, index) => activeQuickStartState[`taskStatus${index}`],
58
58
  ) as QuickStartTaskStatus[];
59
59
 
60
- const handleQuickStartChange = React.useCallback(
60
+ const handleQuickStartChange = useCallback(
61
61
  (quickStartId: string) => setActiveQuickStart(quickStartId),
62
62
  [setActiveQuickStart],
63
63
  );
64
64
 
65
- const handleTaskStatusChange = React.useCallback(
65
+ const handleTaskStatusChange = useCallback(
66
66
  (newTaskStatus: QuickStartTaskStatus) => setQuickStartTaskStatus(newTaskStatus),
67
67
  [setQuickStartTaskStatus],
68
68
  );
69
69
 
70
- const getQuickStartActiveTask = React.useCallback(() => {
70
+ const getQuickStartActiveTask = useCallback(() => {
71
71
  let activeTaskNumber = 0;
72
72
  while (
73
73
  activeTaskNumber !== totalTasks &&
@@ -78,12 +78,12 @@ export const QuickStartController: React.FC<QuickStartControllerProps> = ({
78
78
  return activeTaskNumber;
79
79
  }, [totalTasks, activeQuickStartState]);
80
80
 
81
- const handleQuickStartContinue = React.useCallback(() => {
81
+ const handleQuickStartContinue = useCallback(() => {
82
82
  const activeTaskNumber = getQuickStartActiveTask();
83
83
  setQuickStartTaskNumber(name, activeTaskNumber);
84
84
  }, [getQuickStartActiveTask, setQuickStartTaskNumber, name]);
85
85
 
86
- const handleNext = React.useCallback(() => {
86
+ const handleNext = useCallback(() => {
87
87
  if (status === QuickStartStatus.COMPLETE && taskNumber === totalTasks) {
88
88
  return handleQuickStartChange('');
89
89
  }
@@ -95,9 +95,9 @@ export const QuickStartController: React.FC<QuickStartControllerProps> = ({
95
95
  return nextStep(totalTasks);
96
96
  }, [handleQuickStartChange, nextStep, status, taskNumber, totalTasks, handleQuickStartContinue]);
97
97
 
98
- const handleBack = React.useCallback(() => previousStep(), [previousStep]);
98
+ const handleBack = useCallback(() => previousStep(), [previousStep]);
99
99
 
100
- const handleTaskSelect = React.useCallback(
100
+ const handleTaskSelect = useCallback(
101
101
  (selectedTaskNumber: number) => {
102
102
  setQuickStartTaskNumber(name, selectedTaskNumber);
103
103
  },
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useContext, useEffect, useState } from 'react';
2
2
  import { Drawer, DrawerContent, DrawerContentBody } from '@patternfly/react-core';
3
3
  import QuickStartCloseModal from './QuickStartCloseModal';
4
4
  import QuickStartDrawerContent from './QuickStartDrawerContent';
@@ -19,7 +19,7 @@ export interface QuickStartDrawerProps extends React.HTMLProps<HTMLDivElement> {
19
19
  onCloseNotInProgress?: any;
20
20
  }
21
21
 
22
- export const QuickStartDrawer: React.FC<QuickStartDrawerProps> = ({
22
+ export const QuickStartDrawer: FC<QuickStartDrawerProps> = ({
23
23
  quickStarts = [],
24
24
  children,
25
25
  appendTo,
@@ -34,9 +34,9 @@ export const QuickStartDrawer: React.FC<QuickStartDrawerProps> = ({
34
34
  allQuickStarts = [],
35
35
  allQuickStartStates,
36
36
  setAllQuickStartStates,
37
- } = React.useContext<QuickStartContextValues>(QuickStartContext);
37
+ } = useContext<QuickStartContextValues>(QuickStartContext);
38
38
  const combinedQuickStarts = allQuickStarts.concat(quickStarts);
39
- React.useEffect(() => {
39
+ useEffect(() => {
40
40
  const params = new URLSearchParams(window.location.search);
41
41
  // if there is a quick start param, but the quick start is not active, set it
42
42
  // this can happen if a new browser session is opened or an incognito window for example
@@ -50,7 +50,7 @@ export const QuickStartDrawer: React.FC<QuickStartDrawerProps> = ({
50
50
  }
51
51
  }, [activeQuickStartID, combinedQuickStarts, setActiveQuickStart]);
52
52
 
53
- React.useEffect(() => {
53
+ useEffect(() => {
54
54
  // If activeQuickStartID was changed through prop from QuickStartContainer, need to init the state if it does not exist yet
55
55
  if (activeQuickStartID && !allQuickStartStates[activeQuickStartID]) {
56
56
  setAllQuickStartStates({
@@ -60,7 +60,7 @@ export const QuickStartDrawer: React.FC<QuickStartDrawerProps> = ({
60
60
  }
61
61
  }, [activeQuickStartID, allQuickStartStates, setAllQuickStartStates]);
62
62
 
63
- const [modalOpen, setModalOpen] = React.useState<boolean>(false);
63
+ const [modalOpen, setModalOpen] = useState<boolean>(false);
64
64
  const onClose = () => setActiveQuickStart('');
65
65
  const handleClose = (activeQuickStartStatus: string | number) => {
66
66
  if (activeQuickStartStatus === QuickStartStatus.IN_PROGRESS) {
@@ -1,4 +1,4 @@
1
- import * as React from 'react';
1
+ import { FC, useContext } from 'react';
2
2
  import QuickStartPanelContent from './QuickStartPanelContent';
3
3
  import { QuickStartContext, QuickStartContextValues } from './utils/quick-start-context';
4
4
  import { QuickStart } from './utils/quick-start-types';
@@ -12,7 +12,7 @@ export interface QuickStartDrawerContentProps extends React.HTMLProps<HTMLDivEle
12
12
  handleDrawerClose?: (quickStartStatus: string | number) => void;
13
13
  }
14
14
 
15
- export const QuickStartDrawerContent: React.FC<QuickStartDrawerContentProps> = ({
15
+ export const QuickStartDrawerContent: FC<QuickStartDrawerContentProps> = ({
16
16
  quickStarts = [],
17
17
  appendTo,
18
18
  fullWidth,
@@ -23,7 +23,7 @@ export const QuickStartDrawerContent: React.FC<QuickStartDrawerContentProps> = (
23
23
  activeQuickStartID,
24
24
  allQuickStarts = [],
25
25
  activeQuickStartState,
26
- } = React.useContext<QuickStartContextValues>(QuickStartContext);
26
+ } = useContext<QuickStartContextValues>(QuickStartContext);
27
27
  const combinedQuickStarts = allQuickStarts.concat(quickStarts);
28
28
 
29
29
  const handleClose = () => {