@patternfly/react-core 4.213.2 → 4.213.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 (31) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/dist/esm/components/Card/Card.d.ts +7 -0
  3. package/dist/esm/components/Card/Card.d.ts.map +1 -1
  4. package/dist/esm/components/Card/Card.js +24 -1
  5. package/dist/esm/components/Card/Card.js.map +1 -1
  6. package/dist/esm/components/Card/CardTitle.d.ts.map +1 -1
  7. package/dist/esm/components/Card/CardTitle.js +8 -1
  8. package/dist/esm/components/Card/CardTitle.js.map +1 -1
  9. package/dist/js/components/Card/Card.d.ts +7 -0
  10. package/dist/js/components/Card/Card.d.ts.map +1 -1
  11. package/dist/js/components/Card/Card.js +24 -1
  12. package/dist/js/components/Card/Card.js.map +1 -1
  13. package/dist/js/components/Card/CardTitle.d.ts.map +1 -1
  14. package/dist/js/components/Card/CardTitle.js +8 -1
  15. package/dist/js/components/Card/CardTitle.js.map +1 -1
  16. package/dist/umd/react-core.css +475 -475
  17. package/dist/umd/react-core.js +31 -2
  18. package/dist/umd/react-core.min.css +107 -107
  19. package/dist/umd/react-core.min.js +1 -1
  20. package/package.json +5 -5
  21. package/src/components/Card/Card.tsx +53 -0
  22. package/src/components/Card/CardTitle.tsx +11 -1
  23. package/src/components/Card/__tests__/Card.test.tsx +90 -1
  24. package/src/components/Card/__tests__/CardTitle.test.tsx +13 -0
  25. package/src/components/Card/examples/Card.md +17 -0
  26. package/src/components/Card/examples/CardLegacySelectable.tsx +11 -2
  27. package/src/components/Card/examples/CardSelectable.tsx +10 -1
  28. package/src/components/Card/examples/CardSelectableA11yHighlight.tsx +61 -0
  29. package/src/demos/Card/Card.md +29 -29
  30. package/src/demos/PrimaryDetail.md +16 -2
  31. package/src/demos/examples/Tabs/ModalTabs.tsx +4 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,39 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 4.213.5 (2022-05-11)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * **charts:** support customizing tooltip border for dark theme ([#7393](https://github.com/patternfly/patternfly-react/issues/7393)) ([7168a1d](https://github.com/patternfly/patternfly-react/commit/7168a1dc7f3a1302d719a32bcd32dcdb9ad8fb86))
12
+
13
+
14
+
15
+
16
+
17
+ ## 4.213.4 (2022-05-11)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **topology:** fix variables ([#7364](https://github.com/patternfly/patternfly-react/issues/7364)) ([2dec22e](https://github.com/patternfly/patternfly-react/commit/2dec22eec0f2fb8a634108e6995f747f61fa7d93))
23
+
24
+
25
+
26
+
27
+
28
+ ## 4.213.3 (2022-05-10)
29
+
30
+
31
+ ### Bug Fixes
32
+
33
+ * **Card:** indicate card selectivity and status if using a screen reader ([#7144](https://github.com/patternfly/patternfly-react/issues/7144)) ([56fab43](https://github.com/patternfly/patternfly-react/commit/56fab43f801390d995ae9d0c3bdec3aa0f0d2cfb))
34
+
35
+
36
+
37
+
38
+
6
39
  ## 4.213.2 (2022-05-10)
7
40
 
8
41
 
@@ -33,9 +33,16 @@ export interface CardProps extends React.HTMLProps<HTMLElement>, OUIAProps {
33
33
  isPlain?: boolean;
34
34
  /** Flag indicating if a card is expanded. Modifies the card to be expandable. */
35
35
  isExpanded?: boolean;
36
+ /** Flag indicating that the card should render a hidden input to make it selectable */
37
+ hasSelectableInput?: boolean;
38
+ /** Aria label to apply to the selectable input if one is rendered */
39
+ selectableInputAriaLabel?: string;
40
+ /** Callback that executes when the selectable input is changed */
41
+ onSelectableInputChange?: (labelledBy: string, event: React.FormEvent<HTMLInputElement>) => void;
36
42
  }
37
43
  interface CardContextProps {
38
44
  cardId: string;
45
+ registerTitleId: (id: string) => void;
39
46
  isExpanded: boolean;
40
47
  }
41
48
  export declare const CardContext: React.Context<Partial<CardContextProps>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAgB,SAAS,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS;IACxE,uCAAuC;IACvC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,4EAA4E;IAC5E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;IACxC,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,WAAW,0CAGtB,CAAC;AAEH,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAuEnD,CAAC"}
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAgB,SAAS,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS;IACxE,uCAAuC;IACvC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,4EAA4E;IAC5E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;IACxC,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qEAAqE;IACrE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kEAAkE;IAClE,uBAAuB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAClG;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC;CACrB;AAOD,eAAO,MAAM,WAAW,0CAItB,CAAC;AAEH,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CA+GnD,CAAC"}
@@ -5,12 +5,15 @@ import { css } from '@patternfly/react-styles';
5
5
  import { useOUIAProps } from '../../helpers';
6
6
  export const CardContext = React.createContext({
7
7
  cardId: '',
8
+ registerTitleId: () => { },
8
9
  isExpanded: false
9
10
  });
10
11
  export const Card = (_a) => {
11
- var { children = null, id = '', className = '', component = 'article', isHoverable = false, isCompact = false, isSelectable = false, isSelectableRaised = false, isSelected = false, isDisabledRaised = false, isFlat = false, isExpanded = false, isRounded = false, isLarge = false, isFullHeight = false, isPlain = false, ouiaId, ouiaSafe = true } = _a, props = __rest(_a, ["children", "id", "className", "component", "isHoverable", "isCompact", "isSelectable", "isSelectableRaised", "isSelected", "isDisabledRaised", "isFlat", "isExpanded", "isRounded", "isLarge", "isFullHeight", "isPlain", "ouiaId", "ouiaSafe"]);
12
+ var { children = null, id = '', className = '', component = 'article', isHoverable = false, isCompact = false, isSelectable = false, isSelectableRaised = false, isSelected = false, isDisabledRaised = false, isFlat = false, isExpanded = false, isRounded = false, isLarge = false, isFullHeight = false, isPlain = false, ouiaId, ouiaSafe = true, hasSelectableInput = false, selectableInputAriaLabel, onSelectableInputChange = () => { } } = _a, props = __rest(_a, ["children", "id", "className", "component", "isHoverable", "isCompact", "isSelectable", "isSelectableRaised", "isSelected", "isDisabledRaised", "isFlat", "isExpanded", "isRounded", "isLarge", "isFullHeight", "isPlain", "ouiaId", "ouiaSafe", "hasSelectableInput", "selectableInputAriaLabel", "onSelectableInputChange"]);
12
13
  const Component = component;
13
14
  const ouiaProps = useOUIAProps(Card.displayName, ouiaId, ouiaSafe);
15
+ const [titleId, setTitleId] = React.useState('');
16
+ const [ariaProps, setAriaProps] = React.useState();
14
17
  if (isCompact && isLarge) {
15
18
  // eslint-disable-next-line no-console
16
19
  console.warn('Card: Cannot use isCompact with isLarge. Defaulting to isCompact');
@@ -28,10 +31,30 @@ export const Card = (_a) => {
28
31
  }
29
32
  return '';
30
33
  };
34
+ const containsCardTitleChildRef = React.useRef(false);
35
+ const registerTitleId = (id) => {
36
+ setTitleId(id);
37
+ containsCardTitleChildRef.current = !!id;
38
+ };
39
+ React.useEffect(() => {
40
+ if (selectableInputAriaLabel) {
41
+ setAriaProps({ 'aria-label': selectableInputAriaLabel });
42
+ }
43
+ else if (titleId) {
44
+ setAriaProps({ 'aria-labelledby': titleId });
45
+ }
46
+ else if (hasSelectableInput && !containsCardTitleChildRef.current) {
47
+ setAriaProps({});
48
+ // eslint-disable-next-line no-console
49
+ console.warn('If no CardTitle component is passed as a child of Card the selectableInputAriaLabel prop must be passed');
50
+ }
51
+ }, [hasSelectableInput, selectableInputAriaLabel, titleId]);
31
52
  return (React.createElement(CardContext.Provider, { value: {
32
53
  cardId: id,
54
+ registerTitleId,
33
55
  isExpanded
34
56
  } },
57
+ hasSelectableInput && (React.createElement("input", Object.assign({ className: "pf-screen-reader", id: `${id}-input` }, ariaProps, { type: "checkbox", checked: isSelected, onChange: event => onSelectableInputChange(id, event), disabled: isDisabledRaised, tabIndex: -1 }))),
35
58
  React.createElement(Component, Object.assign({ id: id, className: css(styles.card, isCompact && styles.modifiers.compact, isExpanded && styles.modifiers.expanded, isFlat && styles.modifiers.flat, isRounded && styles.modifiers.rounded, isLarge && styles.modifiers.displayLg, isFullHeight && styles.modifiers.fullHeight, isPlain && styles.modifiers.plain, getSelectableModifiers(), className), tabIndex: isSelectable || isSelectableRaised ? '0' : undefined }, props, ouiaProps), children)));
36
59
  };
37
60
  Card.displayName = 'Card';
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,MAAM,MAAM,mDAAmD,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAa,MAAM,eAAe,CAAC;AA0CxD,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAA4B;IACxE,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,KAAK;CAClB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAuC,CAAC,EAoB7C,EAAE,EAAE;QApByC,EACvD,QAAQ,GAAG,IAAI,EACf,EAAE,GAAG,EAAE,EACP,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,SAAS,EACrB,WAAW,GAAG,KAAK,EACnB,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,KAAK,EACpB,kBAAkB,GAAG,KAAK,EAC1B,UAAU,GAAG,KAAK,EAClB,gBAAgB,GAAG,KAAK,EACxB,MAAM,GAAG,KAAK,EACd,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,KAAK,EACpB,OAAO,GAAG,KAAK,EACf,MAAM,EACN,QAAQ,GAAG,IAAI,OAEL,EADP,KAAK,cAnB+C,iPAoBxD,CADS;IAER,MAAM,SAAS,GAAG,SAAgB,CAAC;IACnC,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnE,IAAI,SAAS,IAAI,OAAO,EAAE;QACxB,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QACjF,OAAO,GAAG,KAAK,CAAC;KACjB;IAED,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAClC,IAAI,gBAAgB,EAAE;YACpB,OAAO,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;SAClD;QACD,IAAI,kBAAkB,EAAE;YACtB,OAAO,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;SAC9F;QACD,IAAI,YAAY,IAAI,WAAW,EAAE;YAC/B,OAAO,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;SAClF;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,WAAW,CAAC,QAAQ,IACnB,KAAK,EAAE;YACL,MAAM,EAAE,EAAE;YACV,UAAU;SACX;QAED,oBAAC,SAAS,kBACR,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,GAAG,CACZ,MAAM,CAAC,IAAI,EACX,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EACrC,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,EACvC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,EAC/B,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EACrC,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,SAAS,EACrC,YAAY,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,EAC3C,OAAO,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,EACjC,sBAAsB,EAAE,EACxB,SAAS,CACV,EACD,QAAQ,EAAE,YAAY,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAC1D,KAAK,EACL,SAAS,GAEZ,QAAQ,CACC,CACS,CACxB,CAAC;AACJ,CAAC,CAAC;AACF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CardTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IACrE,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;CACzC;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAY7D,CAAC"}
1
+ {"version":3,"file":"CardTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IACrE,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;CACzC;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAqB7D,CAAC"}
@@ -2,10 +2,17 @@ import { __rest } from "tslib";
2
2
  import * as React from 'react';
3
3
  import { css } from '@patternfly/react-styles';
4
4
  import styles from '@patternfly/react-styles/css/components/Card/card';
5
+ import { CardContext } from './Card';
5
6
  export const CardTitle = (_a) => {
6
7
  var { children = null, className = '', component = 'div' } = _a, props = __rest(_a, ["children", "className", "component"]);
8
+ const { cardId, registerTitleId } = React.useContext(CardContext);
7
9
  const Component = component;
8
- return (React.createElement(Component, Object.assign({ className: css(styles.cardTitle, className) }, props), children));
10
+ const titleId = cardId ? `${cardId}-title` : '';
11
+ React.useEffect(() => {
12
+ registerTitleId(titleId);
13
+ return () => registerTitleId('');
14
+ }, [registerTitleId, titleId]);
15
+ return (React.createElement(Component, Object.assign({ className: css(styles.cardTitle, className), id: titleId || undefined }, props), children));
9
16
  };
10
17
  CardTitle.displayName = 'CardTitle';
11
18
  //# sourceMappingURL=CardTitle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CardTitle.js","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,MAAM,MAAM,mDAAmD,CAAC;AAWvE,MAAM,CAAC,MAAM,SAAS,GAA4C,CAAC,EAKlD,EAAE,EAAE;QAL8C,EACjE,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,OAEF,EADZ,KAAK,cAJyD,sCAKlE,CADS;IAER,MAAM,SAAS,GAAG,SAAgB,CAAC;IACnC,OAAO,CACL,oBAAC,SAAS,kBAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAM,KAAK,GAC9D,QAAQ,CACC,CACb,CAAC;AACJ,CAAC,CAAC;AACF,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"CardTitle.js","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,MAAM,MAAM,mDAAmD,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAWrC,MAAM,CAAC,MAAM,SAAS,GAA4C,CAAC,EAKlD,EAAE,EAAE;QAL8C,EACjE,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,OAEF,EADZ,KAAK,cAJyD,sCAKlE,CADS;IAER,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,SAAgB,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAEhD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,eAAe,CAAC,OAAO,CAAC,CAAC;QAEzB,OAAO,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAE/B,OAAO,CACL,oBAAC,SAAS,kBAAC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,IAAI,SAAS,IAAM,KAAK,GACxF,QAAQ,CACC,CACb,CAAC;AACJ,CAAC,CAAC;AACF,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC"}
@@ -33,9 +33,16 @@ export interface CardProps extends React.HTMLProps<HTMLElement>, OUIAProps {
33
33
  isPlain?: boolean;
34
34
  /** Flag indicating if a card is expanded. Modifies the card to be expandable. */
35
35
  isExpanded?: boolean;
36
+ /** Flag indicating that the card should render a hidden input to make it selectable */
37
+ hasSelectableInput?: boolean;
38
+ /** Aria label to apply to the selectable input if one is rendered */
39
+ selectableInputAriaLabel?: string;
40
+ /** Callback that executes when the selectable input is changed */
41
+ onSelectableInputChange?: (labelledBy: string, event: React.FormEvent<HTMLInputElement>) => void;
36
42
  }
37
43
  interface CardContextProps {
38
44
  cardId: string;
45
+ registerTitleId: (id: string) => void;
39
46
  isExpanded: boolean;
40
47
  }
41
48
  export declare const CardContext: React.Context<Partial<CardContextProps>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAgB,SAAS,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS;IACxE,uCAAuC;IACvC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,4EAA4E;IAC5E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;IACxC,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,WAAW,0CAGtB,CAAC;AAEH,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAuEnD,CAAC"}
1
+ {"version":3,"file":"Card.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAgB,SAAS,EAAE,MAAM,eAAe,CAAC;AAExD,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS;IACxE,uCAAuC;IACvC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,4EAA4E;IAC5E,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;IACxC,oFAAoF;IACpF,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qGAAqG;IACrG,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oDAAoD;IACpD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mDAAmD;IACnD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wEAAwE;IACxE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,uEAAuE;IACvE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,iFAAiF;IACjF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,uFAAuF;IACvF,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,qEAAqE;IACrE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kEAAkE;IAClE,uBAAuB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAClG;AAED,UAAU,gBAAgB;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACtC,UAAU,EAAE,OAAO,CAAC;CACrB;AAOD,eAAO,MAAM,WAAW,0CAItB,CAAC;AAEH,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,SAAS,CA+GnD,CAAC"}
@@ -8,12 +8,15 @@ const react_styles_1 = require("@patternfly/react-styles");
8
8
  const helpers_1 = require("../../helpers");
9
9
  exports.CardContext = React.createContext({
10
10
  cardId: '',
11
+ registerTitleId: () => { },
11
12
  isExpanded: false
12
13
  });
13
14
  const Card = (_a) => {
14
- var { children = null, id = '', className = '', component = 'article', isHoverable = false, isCompact = false, isSelectable = false, isSelectableRaised = false, isSelected = false, isDisabledRaised = false, isFlat = false, isExpanded = false, isRounded = false, isLarge = false, isFullHeight = false, isPlain = false, ouiaId, ouiaSafe = true } = _a, props = tslib_1.__rest(_a, ["children", "id", "className", "component", "isHoverable", "isCompact", "isSelectable", "isSelectableRaised", "isSelected", "isDisabledRaised", "isFlat", "isExpanded", "isRounded", "isLarge", "isFullHeight", "isPlain", "ouiaId", "ouiaSafe"]);
15
+ var { children = null, id = '', className = '', component = 'article', isHoverable = false, isCompact = false, isSelectable = false, isSelectableRaised = false, isSelected = false, isDisabledRaised = false, isFlat = false, isExpanded = false, isRounded = false, isLarge = false, isFullHeight = false, isPlain = false, ouiaId, ouiaSafe = true, hasSelectableInput = false, selectableInputAriaLabel, onSelectableInputChange = () => { } } = _a, props = tslib_1.__rest(_a, ["children", "id", "className", "component", "isHoverable", "isCompact", "isSelectable", "isSelectableRaised", "isSelected", "isDisabledRaised", "isFlat", "isExpanded", "isRounded", "isLarge", "isFullHeight", "isPlain", "ouiaId", "ouiaSafe", "hasSelectableInput", "selectableInputAriaLabel", "onSelectableInputChange"]);
15
16
  const Component = component;
16
17
  const ouiaProps = helpers_1.useOUIAProps(exports.Card.displayName, ouiaId, ouiaSafe);
18
+ const [titleId, setTitleId] = React.useState('');
19
+ const [ariaProps, setAriaProps] = React.useState();
17
20
  if (isCompact && isLarge) {
18
21
  // eslint-disable-next-line no-console
19
22
  console.warn('Card: Cannot use isCompact with isLarge. Defaulting to isCompact');
@@ -31,10 +34,30 @@ const Card = (_a) => {
31
34
  }
32
35
  return '';
33
36
  };
37
+ const containsCardTitleChildRef = React.useRef(false);
38
+ const registerTitleId = (id) => {
39
+ setTitleId(id);
40
+ containsCardTitleChildRef.current = !!id;
41
+ };
42
+ React.useEffect(() => {
43
+ if (selectableInputAriaLabel) {
44
+ setAriaProps({ 'aria-label': selectableInputAriaLabel });
45
+ }
46
+ else if (titleId) {
47
+ setAriaProps({ 'aria-labelledby': titleId });
48
+ }
49
+ else if (hasSelectableInput && !containsCardTitleChildRef.current) {
50
+ setAriaProps({});
51
+ // eslint-disable-next-line no-console
52
+ console.warn('If no CardTitle component is passed as a child of Card the selectableInputAriaLabel prop must be passed');
53
+ }
54
+ }, [hasSelectableInput, selectableInputAriaLabel, titleId]);
34
55
  return (React.createElement(exports.CardContext.Provider, { value: {
35
56
  cardId: id,
57
+ registerTitleId,
36
58
  isExpanded
37
59
  } },
60
+ hasSelectableInput && (React.createElement("input", Object.assign({ className: "pf-screen-reader", id: `${id}-input` }, ariaProps, { type: "checkbox", checked: isSelected, onChange: event => onSelectableInputChange(id, event), disabled: isDisabledRaised, tabIndex: -1 }))),
38
61
  React.createElement(Component, Object.assign({ id: id, className: react_styles_1.css(card_1.default.card, isCompact && card_1.default.modifiers.compact, isExpanded && card_1.default.modifiers.expanded, isFlat && card_1.default.modifiers.flat, isRounded && card_1.default.modifiers.rounded, isLarge && card_1.default.modifiers.displayLg, isFullHeight && card_1.default.modifiers.fullHeight, isPlain && card_1.default.modifiers.plain, getSelectableModifiers(), className), tabIndex: isSelectable || isSelectableRaised ? '0' : undefined }, props, ouiaProps), children)));
39
62
  };
40
63
  exports.Card = Card;
@@ -1 +1 @@
1
- {"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,qGAAuE;AACvE,2DAA+C;AAC/C,2CAAwD;AA0C3C,QAAA,WAAW,GAAG,KAAK,CAAC,aAAa,CAA4B;IACxE,MAAM,EAAE,EAAE;IACV,UAAU,EAAE,KAAK;CAClB,CAAC,CAAC;AAEI,MAAM,IAAI,GAAuC,CAAC,EAoB7C,EAAE,EAAE;QApByC,EACvD,QAAQ,GAAG,IAAI,EACf,EAAE,GAAG,EAAE,EACP,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,SAAS,EACrB,WAAW,GAAG,KAAK,EACnB,SAAS,GAAG,KAAK,EACjB,YAAY,GAAG,KAAK,EACpB,kBAAkB,GAAG,KAAK,EAC1B,UAAU,GAAG,KAAK,EAClB,gBAAgB,GAAG,KAAK,EACxB,MAAM,GAAG,KAAK,EACd,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK,EACf,YAAY,GAAG,KAAK,EACpB,OAAO,GAAG,KAAK,EACf,MAAM,EACN,QAAQ,GAAG,IAAI,OAEL,EADP,KAAK,sBAnB+C,iPAoBxD,CADS;IAER,MAAM,SAAS,GAAG,SAAgB,CAAC;IACnC,MAAM,SAAS,GAAG,sBAAY,CAAC,YAAI,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnE,IAAI,SAAS,IAAI,OAAO,EAAE;QACxB,sCAAsC;QACtC,OAAO,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;QACjF,OAAO,GAAG,KAAK,CAAC;KACjB;IAED,MAAM,sBAAsB,GAAG,GAAG,EAAE;QAClC,IAAI,gBAAgB,EAAE;YACpB,OAAO,kBAAG,CAAC,cAAM,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;SAClD;QACD,IAAI,kBAAkB,EAAE;YACtB,OAAO,kBAAG,CAAC,cAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,UAAU,IAAI,cAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;SAC9F;QACD,IAAI,YAAY,IAAI,WAAW,EAAE;YAC/B,OAAO,kBAAG,CAAC,cAAM,CAAC,SAAS,CAAC,UAAU,EAAE,UAAU,IAAI,cAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;SAClF;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,mBAAW,CAAC,QAAQ,IACnB,KAAK,EAAE;YACL,MAAM,EAAE,EAAE;YACV,UAAU;SACX;QAED,oBAAC,SAAS,kBACR,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,kBAAG,CACZ,cAAM,CAAC,IAAI,EACX,SAAS,IAAI,cAAM,CAAC,SAAS,CAAC,OAAO,EACrC,UAAU,IAAI,cAAM,CAAC,SAAS,CAAC,QAAQ,EACvC,MAAM,IAAI,cAAM,CAAC,SAAS,CAAC,IAAI,EAC/B,SAAS,IAAI,cAAM,CAAC,SAAS,CAAC,OAAO,EACrC,OAAO,IAAI,cAAM,CAAC,SAAS,CAAC,SAAS,EACrC,YAAY,IAAI,cAAM,CAAC,SAAS,CAAC,UAAU,EAC3C,OAAO,IAAI,cAAM,CAAC,SAAS,CAAC,KAAK,EACjC,sBAAsB,EAAE,EACxB,SAAS,CACV,EACD,QAAQ,EAAE,YAAY,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAC1D,KAAK,EACL,SAAS,GAEZ,QAAQ,CACC,CACS,CACxB,CAAC;AACJ,CAAC,CAAC;AAvEW,QAAA,IAAI,QAuEf;AACF,YAAI,CAAC,WAAW,GAAG,MAAM,CAAC"}
1
+ {"version":3,"file":"Card.js","sourceRoot":"","sources":["../../../../src/components/Card/Card.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CardTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IACrE,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;CACzC;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAY7D,CAAC"}
1
+ {"version":3,"file":"CardTitle.d.ts","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,MAAM,WAAW,cAAe,SAAQ,KAAK,CAAC,SAAS,CAAC,cAAc,CAAC;IACrE,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,gDAAgD;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,iBAAiB,CAAC;CACzC;AAED,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,iBAAiB,CAAC,cAAc,CAqB7D,CAAC"}
@@ -5,10 +5,17 @@ const tslib_1 = require("tslib");
5
5
  const React = tslib_1.__importStar(require("react"));
6
6
  const react_styles_1 = require("@patternfly/react-styles");
7
7
  const card_1 = tslib_1.__importDefault(require("@patternfly/react-styles/css/components/Card/card"));
8
+ const Card_1 = require("./Card");
8
9
  const CardTitle = (_a) => {
9
10
  var { children = null, className = '', component = 'div' } = _a, props = tslib_1.__rest(_a, ["children", "className", "component"]);
11
+ const { cardId, registerTitleId } = React.useContext(Card_1.CardContext);
10
12
  const Component = component;
11
- return (React.createElement(Component, Object.assign({ className: react_styles_1.css(card_1.default.cardTitle, className) }, props), children));
13
+ const titleId = cardId ? `${cardId}-title` : '';
14
+ React.useEffect(() => {
15
+ registerTitleId(titleId);
16
+ return () => registerTitleId('');
17
+ }, [registerTitleId, titleId]);
18
+ return (React.createElement(Component, Object.assign({ className: react_styles_1.css(card_1.default.cardTitle, className), id: titleId || undefined }, props), children));
12
19
  };
13
20
  exports.CardTitle = CardTitle;
14
21
  exports.CardTitle.displayName = 'CardTitle';
@@ -1 +1 @@
1
- {"version":3,"file":"CardTitle.js","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,2DAA+C;AAC/C,qGAAuE;AAWhE,MAAM,SAAS,GAA4C,CAAC,EAKlD,EAAE,EAAE;QAL8C,EACjE,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,OAEF,EADZ,KAAK,sBAJyD,sCAKlE,CADS;IAER,MAAM,SAAS,GAAG,SAAgB,CAAC;IACnC,OAAO,CACL,oBAAC,SAAS,kBAAC,SAAS,EAAE,kBAAG,CAAC,cAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAM,KAAK,GAC9D,QAAQ,CACC,CACb,CAAC;AACJ,CAAC,CAAC;AAZW,QAAA,SAAS,aAYpB;AACF,iBAAS,CAAC,WAAW,GAAG,WAAW,CAAC"}
1
+ {"version":3,"file":"CardTitle.js","sourceRoot":"","sources":["../../../../src/components/Card/CardTitle.tsx"],"names":[],"mappings":";;;;AAAA,qDAA+B;AAC/B,2DAA+C;AAC/C,qGAAuE;AACvE,iCAAqC;AAW9B,MAAM,SAAS,GAA4C,CAAC,EAKlD,EAAE,EAAE;QAL8C,EACjE,QAAQ,GAAG,IAAI,EACf,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,KAAK,OAEF,EADZ,KAAK,sBAJyD,sCAKlE,CADS;IAER,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,kBAAW,CAAC,CAAC;IAClE,MAAM,SAAS,GAAG,SAAgB,CAAC;IACnC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAEhD,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,eAAe,CAAC,OAAO,CAAC,CAAC;QAEzB,OAAO,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IAE/B,OAAO,CACL,oBAAC,SAAS,kBAAC,SAAS,EAAE,kBAAG,CAAC,cAAM,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,IAAI,SAAS,IAAM,KAAK,GACxF,QAAQ,CACC,CACb,CAAC;AACJ,CAAC,CAAC;AArBW,QAAA,SAAS,aAqBpB;AACF,iBAAS,CAAC,WAAW,GAAG,WAAW,CAAC"}