@patternfly/react-core 6.0.0-alpha.26 → 6.0.0-alpha.28

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 (145) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/components/package.json +1 -1
  3. package/deprecated/package.json +1 -1
  4. package/dist/dynamic/components/AboutModal/package.json +1 -1
  5. package/dist/dynamic/components/Accordion/package.json +1 -1
  6. package/dist/dynamic/components/ActionList/package.json +1 -1
  7. package/dist/dynamic/components/Alert/package.json +1 -1
  8. package/dist/dynamic/components/Avatar/package.json +1 -1
  9. package/dist/dynamic/components/BackToTop/package.json +1 -1
  10. package/dist/dynamic/components/Backdrop/package.json +1 -1
  11. package/dist/dynamic/components/BackgroundImage/package.json +1 -1
  12. package/dist/dynamic/components/Badge/package.json +1 -1
  13. package/dist/dynamic/components/Banner/package.json +1 -1
  14. package/dist/dynamic/components/Brand/package.json +1 -1
  15. package/dist/dynamic/components/Breadcrumb/package.json +1 -1
  16. package/dist/dynamic/components/Button/package.json +1 -1
  17. package/dist/dynamic/components/CalendarMonth/package.json +1 -1
  18. package/dist/dynamic/components/Card/package.json +1 -1
  19. package/dist/dynamic/components/Checkbox/package.json +1 -1
  20. package/dist/dynamic/components/Chip/package.json +1 -1
  21. package/dist/dynamic/components/ClipboardCopy/package.json +1 -1
  22. package/dist/dynamic/components/CodeBlock/package.json +1 -1
  23. package/dist/dynamic/components/DataList/package.json +1 -1
  24. package/dist/dynamic/components/DatePicker/package.json +1 -1
  25. package/dist/dynamic/components/DescriptionList/package.json +1 -1
  26. package/dist/dynamic/components/Divider/package.json +1 -1
  27. package/dist/dynamic/components/DragDrop/package.json +1 -1
  28. package/dist/dynamic/components/Drawer/package.json +1 -1
  29. package/dist/dynamic/components/Dropdown/package.json +1 -1
  30. package/dist/dynamic/components/DualListSelector/package.json +1 -1
  31. package/dist/dynamic/components/EmptyState/package.json +1 -1
  32. package/dist/dynamic/components/ExpandableSection/package.json +1 -1
  33. package/dist/dynamic/components/FileUpload/package.json +1 -1
  34. package/dist/dynamic/components/Form/package.json +1 -1
  35. package/dist/dynamic/components/FormSelect/package.json +1 -1
  36. package/dist/dynamic/components/HelperText/package.json +1 -1
  37. package/dist/dynamic/components/Hint/package.json +1 -1
  38. package/dist/dynamic/components/Icon/package.json +1 -1
  39. package/dist/dynamic/components/InputGroup/package.json +1 -1
  40. package/dist/dynamic/components/JumpLinks/package.json +1 -1
  41. package/dist/dynamic/components/Label/package.json +1 -1
  42. package/dist/dynamic/components/List/package.json +1 -1
  43. package/dist/dynamic/components/LoginPage/package.json +1 -1
  44. package/dist/dynamic/components/Masthead/package.json +1 -1
  45. package/dist/dynamic/components/Menu/package.json +1 -1
  46. package/dist/dynamic/components/MenuToggle/package.json +1 -1
  47. package/dist/dynamic/components/Modal/package.json +1 -1
  48. package/dist/dynamic/components/MultipleFileUpload/package.json +1 -1
  49. package/dist/dynamic/components/Nav/package.json +1 -1
  50. package/dist/dynamic/components/NotificationBadge/package.json +1 -1
  51. package/dist/dynamic/components/NotificationDrawer/package.json +1 -1
  52. package/dist/dynamic/components/NumberInput/package.json +1 -1
  53. package/dist/dynamic/components/OverflowMenu/package.json +1 -1
  54. package/dist/dynamic/components/Page/package.json +1 -1
  55. package/dist/dynamic/components/Pagination/package.json +1 -1
  56. package/dist/dynamic/components/Panel/package.json +1 -1
  57. package/dist/dynamic/components/Popover/package.json +1 -1
  58. package/dist/dynamic/components/Progress/package.json +1 -1
  59. package/dist/dynamic/components/ProgressStepper/package.json +1 -1
  60. package/dist/dynamic/components/Radio/package.json +1 -1
  61. package/dist/dynamic/components/SearchInput/package.json +1 -1
  62. package/dist/dynamic/components/Select/package.json +1 -1
  63. package/dist/dynamic/components/Sidebar/package.json +1 -1
  64. package/dist/dynamic/components/SimpleList/package.json +1 -1
  65. package/dist/dynamic/components/Skeleton/package.json +1 -1
  66. package/dist/dynamic/components/SkipToContent/package.json +1 -1
  67. package/dist/dynamic/components/Slider/package.json +1 -1
  68. package/dist/dynamic/components/Spinner/package.json +1 -1
  69. package/dist/dynamic/components/Switch/package.json +1 -1
  70. package/dist/dynamic/components/Tabs/package.json +1 -1
  71. package/dist/dynamic/components/Text/package.json +1 -1
  72. package/dist/dynamic/components/TextArea/package.json +1 -1
  73. package/dist/dynamic/components/TextInput/package.json +1 -1
  74. package/dist/dynamic/components/TextInputGroup/package.json +1 -1
  75. package/dist/dynamic/components/Tile/package.json +1 -1
  76. package/dist/dynamic/components/TimePicker/package.json +1 -1
  77. package/dist/dynamic/components/Timestamp/package.json +1 -1
  78. package/dist/dynamic/components/Title/package.json +1 -1
  79. package/dist/dynamic/components/ToggleGroup/package.json +1 -1
  80. package/dist/dynamic/components/Toolbar/package.json +1 -1
  81. package/dist/dynamic/components/Tooltip/package.json +1 -1
  82. package/dist/dynamic/components/TreeView/package.json +1 -1
  83. package/dist/dynamic/components/Truncate/package.json +1 -1
  84. package/dist/dynamic/components/Wizard/hooks/package.json +1 -1
  85. package/dist/dynamic/components/Wizard/package.json +1 -1
  86. package/dist/dynamic/deprecated/components/ApplicationLauncher/package.json +1 -1
  87. package/dist/dynamic/deprecated/components/ContextSelector/package.json +1 -1
  88. package/dist/dynamic/deprecated/components/Dropdown/package.json +1 -1
  89. package/dist/dynamic/deprecated/components/OptionsMenu/package.json +1 -1
  90. package/dist/dynamic/deprecated/components/PageHeader/package.json +1 -1
  91. package/dist/dynamic/deprecated/components/Select/package.json +1 -1
  92. package/dist/dynamic/deprecated/components/Wizard/package.json +1 -1
  93. package/dist/dynamic/deprecated/components/package.json +1 -1
  94. package/dist/dynamic/helpers/FocusTrap/FocusTrap/package.json +1 -1
  95. package/dist/dynamic/helpers/GenerateId/GenerateId/package.json +1 -1
  96. package/dist/dynamic/helpers/KeyboardHandler/package.json +1 -1
  97. package/dist/dynamic/helpers/OUIA/ouia/package.json +1 -1
  98. package/dist/dynamic/helpers/Popper/Popper/package.json +1 -1
  99. package/dist/dynamic/helpers/constants/package.json +1 -1
  100. package/dist/dynamic/helpers/datetimeUtils/package.json +1 -1
  101. package/dist/dynamic/helpers/favorites/package.json +1 -1
  102. package/dist/dynamic/helpers/fileUtils/package.json +1 -1
  103. package/dist/dynamic/helpers/htmlConstants/package.json +1 -1
  104. package/dist/dynamic/helpers/package.json +1 -1
  105. package/dist/dynamic/helpers/resizeObserver/package.json +1 -1
  106. package/dist/dynamic/helpers/typeUtils/package.json +1 -1
  107. package/dist/dynamic/helpers/useInterval/package.json +1 -1
  108. package/dist/dynamic/helpers/useIsomorphicLayout/package.json +1 -1
  109. package/dist/dynamic/helpers/useUnmountEffect/package.json +1 -1
  110. package/dist/dynamic/helpers/util/package.json +1 -1
  111. package/dist/dynamic/layouts/Bullseye/package.json +1 -1
  112. package/dist/dynamic/layouts/Flex/package.json +1 -1
  113. package/dist/dynamic/layouts/Gallery/package.json +1 -1
  114. package/dist/dynamic/layouts/Grid/package.json +1 -1
  115. package/dist/dynamic/layouts/Level/package.json +1 -1
  116. package/dist/dynamic/layouts/Split/package.json +1 -1
  117. package/dist/dynamic/layouts/Stack/package.json +1 -1
  118. package/dist/dynamic/next/components/Modal/package.json +1 -1
  119. package/dist/dynamic/next/components/package.json +1 -1
  120. package/dist/dynamic/styles/package.json +1 -1
  121. package/dist/esm/components/Badge/Badge.d.ts +2 -0
  122. package/dist/esm/components/Badge/Badge.d.ts.map +1 -1
  123. package/dist/esm/components/Badge/Badge.js +5 -2
  124. package/dist/esm/components/Badge/Badge.js.map +1 -1
  125. package/dist/esm/components/ToggleGroup/ToggleGroupItem.js +4 -4
  126. package/dist/esm/components/ToggleGroup/ToggleGroupItem.js.map +1 -1
  127. package/dist/js/components/Badge/Badge.d.ts +2 -0
  128. package/dist/js/components/Badge/Badge.d.ts.map +1 -1
  129. package/dist/js/components/Badge/Badge.js +5 -2
  130. package/dist/js/components/Badge/Badge.js.map +1 -1
  131. package/dist/js/components/ToggleGroup/ToggleGroupItem.js +4 -4
  132. package/dist/js/components/ToggleGroup/ToggleGroupItem.js.map +1 -1
  133. package/dist/umd/react-core.min.js +1 -1
  134. package/helpers/package.json +1 -1
  135. package/layouts/package.json +1 -1
  136. package/next/package.json +1 -1
  137. package/package.json +2 -2
  138. package/src/components/Badge/Badge.tsx +9 -0
  139. package/src/components/Badge/__tests__/Badge.test.tsx +9 -0
  140. package/src/components/Badge/examples/Badge.css +6 -0
  141. package/src/components/Badge/examples/Badge.md +7 -0
  142. package/src/components/Badge/examples/BadgeRead.tsx +3 -3
  143. package/src/components/Badge/examples/BadgeToggle.tsx +13 -0
  144. package/src/components/ToggleGroup/ToggleGroupItem.tsx +7 -7
  145. package/src/components/ToggleGroup/examples/ToggleGroupDefaultMultiple.tsx +3 -3
@@ -1 +1 @@
1
- {"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.0.0-alpha.25","private":true}
1
+ {"name":"@patternfly/react-core-helpers","main":"../dist/js/helpers/index.js","module":"../dist/esm/helpers/index.js","typings":"../dist/esm/helpers/index.d.ts","version":"6.0.0-alpha.27","private":true}
@@ -1 +1 @@
1
- {"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.0.0-alpha.25","private":true}
1
+ {"name":"@patternfly/react-core-layouts","main":"../dist/js/layouts/index.js","module":"../dist/esm/layouts/index.js","typings":"../dist/esm/layouts/index.d.ts","version":"6.0.0-alpha.27","private":true}
package/next/package.json CHANGED
@@ -1 +1 @@
1
- {"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.0.0-alpha.25","private":true}
1
+ {"name":"@patternfly/react-core-next","main":"../dist/js/next/index.js","module":"../dist/esm/next/index.js","typings":"../dist/esm/next/index.d.ts","version":"6.0.0-alpha.27","private":true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@patternfly/react-core",
3
- "version": "6.0.0-alpha.26",
3
+ "version": "6.0.0-alpha.28",
4
4
  "description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
5
5
  "main": "dist/js/index.js",
6
6
  "module": "dist/esm/index.js",
@@ -73,5 +73,5 @@
73
73
  "react": "^17 || ^18",
74
74
  "react-dom": "^17 || ^18"
75
75
  },
76
- "gitHead": "8ffcb64844b3d4ba40c08254bbc8a87b64a88004"
76
+ "gitHead": "2708044bb386d967e494bdb9fa0dfc632d90dcc3"
77
77
  }
@@ -1,12 +1,15 @@
1
1
  import * as React from 'react';
2
2
  import { css } from '@patternfly/react-styles';
3
3
  import styles from '@patternfly/react-styles/css/components/Badge/badge';
4
+ import CaretDownIcon from '@patternfly/react-icons/dist/esm/icons/caret-down-icon';
4
5
 
5
6
  export interface BadgeProps extends React.HTMLProps<HTMLSpanElement> {
6
7
  /** Text announced by screen readers to indicate the current content/status of the badge. */
7
8
  screenReaderText?: string;
8
9
  /** Adds styling to the badge to indicate it has been read */
9
10
  isRead?: boolean;
11
+ /** Adds styling to the badge to indicate it has a toggle. A badge with a toggle must be passed to a MenuToggle component. */
12
+ isToggle?: boolean;
10
13
  /** content rendered inside the Badge */
11
14
  children?: React.ReactNode;
12
15
  /** additional classes added to the Badge */
@@ -15,6 +18,7 @@ export interface BadgeProps extends React.HTMLProps<HTMLSpanElement> {
15
18
 
16
19
  export const Badge: React.FunctionComponent<BadgeProps> = ({
17
20
  isRead = false,
21
+ isToggle = false,
18
22
  className = '',
19
23
  children = '',
20
24
  screenReaderText,
@@ -26,6 +30,11 @@ export const Badge: React.FunctionComponent<BadgeProps> = ({
26
30
  >
27
31
  {children}
28
32
  {screenReaderText && <span className="pf-v5-screen-reader">{screenReaderText}</span>}
33
+ {isToggle && (
34
+ <span className={css(styles.badgeToggleIcon)}>
35
+ <CaretDownIcon />
36
+ </span>
37
+ )}
29
38
  </span>
30
39
  );
31
40
  Badge.displayName = 'Badge';
@@ -32,6 +32,15 @@ test('Renders with class name pf-m-read when isRead prop is true', () => {
32
32
  expect(screen.getByText('Test')).toHaveClass('pf-m-read');
33
33
  });
34
34
 
35
+ test('Renders with toggle styles and icon when isToggle prop is true', () => {
36
+ render(
37
+ <Badge isRead={true} isToggle={true}>
38
+ Test
39
+ </Badge>
40
+ );
41
+ expect(screen.getByText('Test').lastChild).toHaveClass(styles.badgeToggleIcon);
42
+ });
43
+
35
44
  test('Does not render pf-v5-screen-reader class by default', () => {
36
45
  render(<Badge>Test</Badge>);
37
46
  expect(screen.getByText('Test')).not.toContainHTML('<span class="pf-v5-screen-reader"></span>');
@@ -0,0 +1,6 @@
1
+ #ws-react-c-badge-read .pf-v5-c-badge,
2
+ #ws-react-c-badge-unread .pf-v5-c-badge,
3
+ #ws-react-c-badge-badge-as-toggle .pf-v5-c-badge {
4
+ margin-inline-end: var(--pf-t--global--spacer--xs);
5
+ margin-block-end: var(--pf-t--global--spacer--xs);
6
+ }
@@ -5,6 +5,8 @@ cssPrefix: pf-v5-c-badge
5
5
  propComponents: ['Badge']
6
6
  ---
7
7
 
8
+ import './Badge.css';
9
+
8
10
  ## Examples
9
11
 
10
12
  ### Read
@@ -16,3 +18,8 @@ propComponents: ['Badge']
16
18
 
17
19
  ```ts file="./BadgeUnread.tsx"
18
20
  ```
21
+
22
+ ### Badge as toggle
23
+
24
+ ```ts file="./BadgeToggle.tsx"
25
+ ```
@@ -5,13 +5,13 @@ export const BadgeRead: React.FunctionComponent = () => (
5
5
  <React.Fragment>
6
6
  <Badge key={1} isRead>
7
7
  7
8
- </Badge>{' '}
8
+ </Badge>
9
9
  <Badge key={2} isRead>
10
10
  24
11
- </Badge>{' '}
11
+ </Badge>
12
12
  <Badge key={3} isRead>
13
13
  240
14
- </Badge>{' '}
14
+ </Badge>
15
15
  <Badge key={4} isRead>
16
16
  999+
17
17
  </Badge>
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { Badge } from '@patternfly/react-core';
3
+
4
+ export const BadgeToggle: React.FunctionComponent = () => (
5
+ <React.Fragment>
6
+ <Badge key={1} screenReaderText="Unread Messages" isToggle>
7
+ 7
8
+ </Badge>
9
+ <Badge key={2} screenReaderText="Read Messages" isRead isToggle>
10
+ 7
11
+ </Badge>
12
+ </React.Fragment>
13
+ );
@@ -28,9 +28,9 @@ export const ToggleGroupItem: React.FunctionComponent<ToggleGroupItemProps> = ({
28
28
  className,
29
29
  isDisabled = false,
30
30
  isSelected = false,
31
- 'aria-label': ariaLabel = '',
31
+ 'aria-label': ariaLabel,
32
32
  onChange = () => {},
33
- buttonId = '',
33
+ buttonId,
34
34
  ...props
35
35
  }: ToggleGroupItemProps) => {
36
36
  const handleChange = (event: any): void => {
@@ -49,12 +49,12 @@ export const ToggleGroupItem: React.FunctionComponent<ToggleGroupItemProps> = ({
49
49
  className={css(styles.toggleGroupButton, isSelected && styles.modifiers.selected)}
50
50
  aria-pressed={isSelected}
51
51
  onClick={handleChange}
52
- {...(ariaLabel && { 'aria-label': ariaLabel })}
53
- {...(isDisabled && { disabled: true })}
54
- {...(buttonId && { id: buttonId })}
52
+ aria-label={ariaLabel}
53
+ disabled={isDisabled}
54
+ id={buttonId}
55
55
  >
56
- {icon ? <ToggleGroupItemElement variant={ToggleGroupItemVariant.icon}>{icon}</ToggleGroupItemElement> : null}
57
- {text ? <ToggleGroupItemElement variant={ToggleGroupItemVariant.text}>{text}</ToggleGroupItemElement> : null}
56
+ {icon && <ToggleGroupItemElement variant={ToggleGroupItemVariant.icon}>{icon}</ToggleGroupItemElement>}
57
+ {text && <ToggleGroupItemElement variant={ToggleGroupItemVariant.text}>{text}</ToggleGroupItemElement>}
58
58
  </button>
59
59
  </div>
60
60
  );
@@ -16,9 +16,6 @@ export const ToggleGroupDefaultMultiple: React.FunctionComponent = () => {
16
16
  };
17
17
  return (
18
18
  <Stack hasGutter>
19
- <StackItem>
20
- <Button onClick={disableAllClick}>{disableAll ? 'Enable back' : 'Disable all'}</Button>
21
- </StackItem>
22
19
  <StackItem>
23
20
  <ToggleGroup areAllGroupsDisabled={disableAll} aria-label="Default with multiple selectable">
24
21
  <ToggleGroupItem
@@ -38,6 +35,9 @@ export const ToggleGroupDefaultMultiple: React.FunctionComponent = () => {
38
35
  <ToggleGroupItem text="Option 3" key={2} isDisabled />
39
36
  </ToggleGroup>
40
37
  </StackItem>
38
+ <StackItem>
39
+ <Button onClick={disableAllClick}>{disableAll ? 'Enable back' : 'Disable all'}</Button>
40
+ </StackItem>
41
41
  </Stack>
42
42
  );
43
43
  };