carbon-react 119.12.2 → 120.1.0
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/esm/__internal__/input/input-presentation.style.d.ts +1 -1
- package/esm/__spec_helper__/test-utils.d.ts +3 -2
- package/esm/__spec_helper__/test-utils.js +15 -1
- package/esm/components/box/box.component.d.ts +23 -6
- package/esm/components/box/box.component.js +3570 -103
- package/esm/components/box/box.style.d.ts +3 -0
- package/esm/components/box/box.style.js +112 -0
- package/esm/components/dismissible-box/dismissible-box.style.d.ts +2 -1
- package/esm/components/drawer/drawer.style.d.ts +2 -1
- package/esm/components/duelling-picklist/picklist/picklist.style.js +4 -2
- package/esm/components/flat-table/__internal__/build-position-map.d.ts +2 -0
- package/esm/components/flat-table/__internal__/build-position-map.js +14 -0
- package/esm/components/flat-table/__internal__/index.d.ts +2 -0
- package/esm/components/flat-table/__internal__/index.js +2 -0
- package/esm/components/flat-table/__internal__/use-calculate-sticky-cells.d.ts +12 -0
- package/esm/components/flat-table/__internal__/use-calculate-sticky-cells.js +28 -0
- package/esm/components/flat-table/flat-table-cell/flat-table-cell.component.d.ts +2 -41
- package/esm/components/flat-table/flat-table-cell/flat-table-cell.component.js +26 -25
- package/esm/components/flat-table/flat-table-cell/flat-table-cell.style.d.ts +7 -2
- package/esm/components/flat-table/flat-table-checkbox/flat-table-checkbox.component.d.ts +3 -25
- package/esm/components/flat-table/flat-table-checkbox/flat-table-checkbox.component.js +21 -14
- package/esm/components/flat-table/flat-table-checkbox/flat-table-checkbox.style.d.ts +3 -1
- package/esm/components/flat-table/flat-table-head/flat-table-head.component.d.ts +4 -0
- package/esm/components/flat-table/flat-table-head/flat-table-head.component.js +21 -24
- package/esm/components/flat-table/flat-table-header/flat-table-header.component.d.ts +2 -26
- package/esm/components/flat-table/flat-table-header/flat-table-header.component.js +15 -13
- package/esm/components/flat-table/flat-table-header/flat-table-header.style.d.ts +3 -1
- package/esm/components/flat-table/flat-table-row/__internal__/flat-table-row-context.d.ts +12 -0
- package/esm/components/flat-table/flat-table-row/__internal__/flat-table-row-context.js +6 -0
- package/esm/components/flat-table/flat-table-row/__internal__/flat-table-row-draggable.component.d.ts +3 -1
- package/esm/components/flat-table/flat-table-row/__internal__/flat-table-row-draggable.component.js +17 -3
- package/esm/components/flat-table/flat-table-row/__internal__/sub-row-provider.d.ts +15 -0
- package/esm/components/flat-table/flat-table-row/__internal__/sub-row-provider.js +28 -0
- package/esm/components/flat-table/flat-table-row/flat-table-row.component.d.ts +1 -15
- package/esm/components/flat-table/flat-table-row/flat-table-row.component.js +85 -74
- package/esm/components/flat-table/flat-table-row/flat-table-row.style.d.ts +4 -1
- package/esm/components/flat-table/flat-table-row/flat-table-row.style.js +1 -9
- package/esm/components/flat-table/flat-table-row-header/flat-table-row-header.component.d.ts +4 -42
- package/esm/components/flat-table/flat-table-row-header/flat-table-row-header.component.js +33 -20
- package/esm/components/flat-table/flat-table-row-header/flat-table-row-header.style.d.ts +7 -1
- package/esm/components/flat-table/flat-table-row-header/flat-table-row-header.style.js +5 -1
- package/esm/components/flat-table/flat-table.component.js +24 -7
- package/esm/components/flat-table/flat-table.style.js +2 -2
- package/esm/components/heading/heading.style.d.ts +4 -9
- package/esm/components/menu/menu-full-screen/menu-full-screen.style.js +2 -2
- package/esm/components/menu/scrollable-block/scrollable-block.style.js +2 -2
- package/esm/components/typography/typography.component.d.ts +25 -15
- package/esm/components/typography/typography.component.js +37 -184
- package/esm/components/typography/typography.style.d.ts +12 -0
- package/esm/components/typography/typography.style.js +190 -0
- package/esm/components/vertical-menu/vertical-menu.style.js +3 -3
- package/esm/style/utils/filter-styled-system-flexbox-props.d.ts +3 -0
- package/esm/style/utils/filter-styled-system-flexbox-props.js +5 -0
- package/esm/style/utils/filter-styled-system-grid-props.d.ts +3 -0
- package/esm/style/utils/filter-styled-system-grid-props.js +5 -0
- package/esm/style/utils/filter-styled-system-layout-props.d.ts +3 -0
- package/esm/style/utils/filter-styled-system-layout-props.js +5 -0
- package/esm/style/utils/index.d.ts +4 -1
- package/esm/style/utils/index.js +4 -1
- package/lib/__internal__/input/input-presentation.style.d.ts +1 -1
- package/lib/__spec_helper__/test-utils.d.ts +3 -2
- package/lib/__spec_helper__/test-utils.js +16 -1
- package/lib/components/box/box.component.d.ts +23 -6
- package/lib/components/box/box.component.js +3569 -105
- package/lib/components/box/box.style.d.ts +3 -0
- package/lib/components/box/box.style.js +122 -0
- package/lib/components/dismissible-box/dismissible-box.style.d.ts +2 -1
- package/lib/components/drawer/drawer.style.d.ts +2 -1
- package/lib/components/duelling-picklist/picklist/picklist.style.js +2 -1
- package/lib/components/flat-table/__internal__/build-position-map.d.ts +2 -0
- package/lib/components/flat-table/__internal__/build-position-map.js +21 -0
- package/lib/components/flat-table/__internal__/index.d.ts +2 -0
- package/lib/components/flat-table/__internal__/index.js +20 -0
- package/lib/components/flat-table/__internal__/package.json +6 -0
- package/lib/components/flat-table/__internal__/use-calculate-sticky-cells.d.ts +12 -0
- package/lib/components/flat-table/__internal__/use-calculate-sticky-cells.js +36 -0
- package/lib/components/flat-table/flat-table-cell/flat-table-cell.component.d.ts +2 -41
- package/lib/components/flat-table/flat-table-cell/flat-table-cell.component.js +25 -24
- package/lib/components/flat-table/flat-table-cell/flat-table-cell.style.d.ts +7 -2
- package/lib/components/flat-table/flat-table-checkbox/flat-table-checkbox.component.d.ts +3 -25
- package/lib/components/flat-table/flat-table-checkbox/flat-table-checkbox.component.js +20 -13
- package/lib/components/flat-table/flat-table-checkbox/flat-table-checkbox.style.d.ts +3 -1
- package/lib/components/flat-table/flat-table-head/flat-table-head.component.d.ts +4 -0
- package/lib/components/flat-table/flat-table-head/flat-table-head.component.js +23 -25
- package/lib/components/flat-table/flat-table-header/flat-table-header.component.d.ts +2 -26
- package/lib/components/flat-table/flat-table-header/flat-table-header.component.js +14 -12
- package/lib/components/flat-table/flat-table-header/flat-table-header.style.d.ts +3 -1
- package/lib/components/flat-table/flat-table-row/__internal__/flat-table-row-context.d.ts +12 -0
- package/lib/components/flat-table/flat-table-row/__internal__/flat-table-row-context.js +13 -0
- package/lib/components/flat-table/flat-table-row/__internal__/flat-table-row-draggable.component.d.ts +3 -1
- package/lib/components/flat-table/flat-table-row/__internal__/flat-table-row-draggable.component.js +17 -3
- package/lib/components/flat-table/flat-table-row/__internal__/sub-row-provider.d.ts +15 -0
- package/lib/components/flat-table/flat-table-row/__internal__/sub-row-provider.js +38 -0
- package/lib/components/flat-table/flat-table-row/flat-table-row.component.d.ts +1 -15
- package/lib/components/flat-table/flat-table-row/flat-table-row.component.js +84 -73
- package/lib/components/flat-table/flat-table-row/flat-table-row.style.d.ts +4 -1
- package/lib/components/flat-table/flat-table-row/flat-table-row.style.js +1 -9
- package/lib/components/flat-table/flat-table-row-header/flat-table-row-header.component.d.ts +4 -42
- package/lib/components/flat-table/flat-table-row-header/flat-table-row-header.component.js +32 -19
- package/lib/components/flat-table/flat-table-row-header/flat-table-row-header.style.d.ts +7 -1
- package/lib/components/flat-table/flat-table-row-header/flat-table-row-header.style.js +5 -1
- package/lib/components/flat-table/flat-table.component.js +24 -7
- package/lib/components/flat-table/flat-table.style.js +1 -1
- package/lib/components/heading/heading.style.d.ts +4 -9
- package/lib/components/menu/menu-full-screen/menu-full-screen.style.js +1 -1
- package/lib/components/menu/scrollable-block/scrollable-block.style.js +1 -1
- package/lib/components/typography/typography.component.d.ts +25 -15
- package/lib/components/typography/typography.component.js +39 -187
- package/lib/components/typography/typography.style.d.ts +12 -0
- package/lib/components/typography/typography.style.js +200 -0
- package/lib/components/vertical-menu/vertical-menu.style.js +1 -1
- package/lib/style/utils/filter-styled-system-flexbox-props.d.ts +3 -0
- package/lib/style/utils/filter-styled-system-flexbox-props.js +14 -0
- package/lib/style/utils/filter-styled-system-grid-props.d.ts +3 -0
- package/lib/style/utils/filter-styled-system-grid-props.js +14 -0
- package/lib/style/utils/filter-styled-system-layout-props.d.ts +3 -0
- package/lib/style/utils/filter-styled-system-layout-props.js +14 -0
- package/lib/style/utils/index.d.ts +4 -1
- package/lib/style/utils/index.js +21 -0
- package/package.json +1 -1
|
@@ -10,6 +10,8 @@ var _icon = _interopRequireDefault(require("../../icon"));
|
|
|
10
10
|
var _flatTableRowHeader = require("./flat-table-row-header.style");
|
|
11
11
|
var _flatTable = require("../flat-table.component");
|
|
12
12
|
var _guid = _interopRequireDefault(require("../../../__internal__/utils/helpers/guid"));
|
|
13
|
+
var _tags = _interopRequireDefault(require("../../../__internal__/utils/helpers/tags/tags"));
|
|
14
|
+
var _useCalculateStickyCells = _interopRequireDefault(require("../__internal__/use-calculate-sticky-cells"));
|
|
13
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
16
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
17
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
@@ -20,55 +22,66 @@ const FlatTableRowHeader = ({
|
|
|
20
22
|
width,
|
|
21
23
|
py,
|
|
22
24
|
px,
|
|
23
|
-
expandable = false,
|
|
24
|
-
onClick,
|
|
25
|
-
onKeyDown,
|
|
26
|
-
leftPosition,
|
|
27
|
-
rightPosition,
|
|
28
25
|
truncate,
|
|
29
26
|
title,
|
|
30
27
|
stickyAlignment = "left",
|
|
31
28
|
colspan,
|
|
32
29
|
rowspan,
|
|
30
|
+
id,
|
|
33
31
|
...rest
|
|
34
32
|
}) => {
|
|
35
|
-
const
|
|
33
|
+
const internalId = (0, _react.useRef)(id || (0, _guid.default)());
|
|
36
34
|
const [tabIndex, setTabIndex] = (0, _react.useState)(-1);
|
|
37
35
|
const {
|
|
38
36
|
selectedId
|
|
39
37
|
} = (0, _react.useContext)(_flatTable.FlatTableThemeContext);
|
|
38
|
+
const {
|
|
39
|
+
leftPosition,
|
|
40
|
+
rightPosition,
|
|
41
|
+
expandable,
|
|
42
|
+
onClick,
|
|
43
|
+
onKeyDown,
|
|
44
|
+
isFirstCell,
|
|
45
|
+
isExpandableCell
|
|
46
|
+
} = (0, _useCalculateStickyCells.default)(internalId.current);
|
|
47
|
+
(0, _react.useEffect)(() => {
|
|
48
|
+
setTabIndex(isExpandableCell && selectedId === internalId.current ? 0 : -1);
|
|
49
|
+
}, [selectedId, isExpandableCell]);
|
|
40
50
|
const handleOnClick = (0, _react.useCallback)(ev => {
|
|
41
|
-
if (
|
|
42
|
-
}, [
|
|
51
|
+
if (isExpandableCell && onClick) onClick(ev);
|
|
52
|
+
}, [isExpandableCell, onClick]);
|
|
43
53
|
const handleOnKeyDown = (0, _react.useCallback)(ev => {
|
|
44
|
-
if (
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
}, [selectedId]);
|
|
54
|
+
if (isExpandableCell && onKeyDown) {
|
|
55
|
+
onKeyDown(ev);
|
|
56
|
+
}
|
|
57
|
+
}, [isExpandableCell, onKeyDown]);
|
|
49
58
|
return /*#__PURE__*/_react.default.createElement(_flatTableRowHeader.StyledFlatTableRowHeader, _extends({
|
|
50
59
|
leftPosition: stickyAlignment === "left" ? leftPosition || 0 : undefined,
|
|
51
60
|
rightPosition: stickyAlignment === "right" ? rightPosition || 0 : undefined,
|
|
52
|
-
align: align
|
|
61
|
+
align: align
|
|
62
|
+
}, (0, _tags.default)("flat-table-row-header", {
|
|
53
63
|
"data-element": "flat-table-row-header",
|
|
64
|
+
...rest
|
|
65
|
+
}), {
|
|
54
66
|
width: width,
|
|
55
67
|
py: py || "10px",
|
|
56
68
|
px: px || 3,
|
|
57
69
|
onClick: handleOnClick,
|
|
58
|
-
tabIndex:
|
|
70
|
+
tabIndex: isExpandableCell ? tabIndex : undefined,
|
|
59
71
|
onKeyDown: handleOnKeyDown,
|
|
60
72
|
truncate: truncate,
|
|
61
73
|
expandable: expandable,
|
|
62
|
-
stickyAlignment: stickyAlignment
|
|
63
|
-
id: id.current
|
|
74
|
+
stickyAlignment: stickyAlignment
|
|
64
75
|
}, colspan !== undefined && {
|
|
65
76
|
colSpan: Number(colspan)
|
|
66
77
|
}, rowspan !== undefined && {
|
|
67
78
|
rowSpan: Number(rowspan)
|
|
68
|
-
}, rest
|
|
79
|
+
}, rest, {
|
|
80
|
+
id: internalId.current
|
|
81
|
+
}), /*#__PURE__*/_react.default.createElement(_flatTableRowHeader.StyledFlatTableRowHeaderContent, {
|
|
69
82
|
title: truncate && !title && typeof children === "string" ? children : title,
|
|
70
83
|
expandable: expandable
|
|
71
|
-
}, expandable && /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
84
|
+
}, expandable && isFirstCell && /*#__PURE__*/_react.default.createElement(_icon.default, {
|
|
72
85
|
type: "chevron_down_thick",
|
|
73
86
|
bgSize: "extra-small",
|
|
74
87
|
mr: "8px"
|
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import { FlatTableRowHeaderProps } from "./flat-table-row-header.component";
|
|
2
|
-
declare const StyledFlatTableRowHeader: import("styled-components").StyledComponent<"th", any,
|
|
2
|
+
declare const StyledFlatTableRowHeader: import("styled-components").StyledComponent<"th", any, {
|
|
3
|
+
"data-sticky-align": "left" | "right" | undefined;
|
|
4
|
+
} & FlatTableRowHeaderProps & {
|
|
5
|
+
expandable?: boolean | undefined;
|
|
6
|
+
leftPosition?: number | undefined;
|
|
7
|
+
rightPosition?: number | undefined;
|
|
8
|
+
}, "data-sticky-align">;
|
|
3
9
|
declare const StyledFlatTableRowHeaderContent: import("styled-components").StyledComponent<"div", any, {
|
|
4
10
|
expandable?: boolean | undefined;
|
|
5
11
|
}, never>;
|
|
@@ -16,7 +16,11 @@ const verticalBorderSizes = {
|
|
|
16
16
|
medium: "2px",
|
|
17
17
|
large: "4px"
|
|
18
18
|
};
|
|
19
|
-
const StyledFlatTableRowHeader = _styledComponents.default.th
|
|
19
|
+
const StyledFlatTableRowHeader = _styledComponents.default.th.attrs(({
|
|
20
|
+
stickyAlignment
|
|
21
|
+
}) => ({
|
|
22
|
+
"data-sticky-align": stickyAlignment
|
|
23
|
+
}))`
|
|
20
24
|
${({
|
|
21
25
|
align,
|
|
22
26
|
theme,
|
|
@@ -17,7 +17,7 @@ const FlatTableThemeContext = /*#__PURE__*/_react.default.createContext({
|
|
|
17
17
|
setSelectedId: () => {}
|
|
18
18
|
});
|
|
19
19
|
exports.FlatTableThemeContext = FlatTableThemeContext;
|
|
20
|
-
const FOCUSABLE_ROW_AND_CELL_QUERY = "tbody tr, tbody tr td, tbody tr th";
|
|
20
|
+
const FOCUSABLE_ROW_AND_CELL_QUERY = "tbody tr[tabindex], tbody tr td[tabindex], tbody tr th[tabindex]";
|
|
21
21
|
const FlatTable = ({
|
|
22
22
|
caption,
|
|
23
23
|
children,
|
|
@@ -108,7 +108,7 @@ const FlatTable = ({
|
|
|
108
108
|
if (!focusableElements) {
|
|
109
109
|
return;
|
|
110
110
|
}
|
|
111
|
-
const focusableElementsArray = Array.from(focusableElements)
|
|
111
|
+
const focusableElementsArray = Array.from(focusableElements);
|
|
112
112
|
const currentFocusIndex = focusableElementsArray.findIndex(el => el === document.activeElement);
|
|
113
113
|
if (_events.default.isDownKey(ev)) {
|
|
114
114
|
ev.preventDefault();
|
|
@@ -135,13 +135,30 @@ const FlatTable = ({
|
|
|
135
135
|
}
|
|
136
136
|
};
|
|
137
137
|
(0, _react.useLayoutEffect)(() => {
|
|
138
|
-
const
|
|
138
|
+
const findSelectedId = () => {
|
|
139
|
+
const firstfocusableElement = tableRef.current?.querySelector(FOCUSABLE_ROW_AND_CELL_QUERY);
|
|
140
|
+
|
|
141
|
+
// if no other menu item is selected, we need to make the first row a tab stop
|
|
142
|
+
if (firstfocusableElement && !selectedId) {
|
|
143
|
+
const currentlySelectedId = firstfocusableElement?.getAttribute("id");
|
|
144
|
+
|
|
145
|
+
/* istanbul ignore else */
|
|
146
|
+
if (currentlySelectedId && selectedId !== currentlySelectedId) {
|
|
147
|
+
setSelectedId(currentlySelectedId);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
};
|
|
151
|
+
const observer = new MutationObserver(findSelectedId);
|
|
139
152
|
|
|
140
|
-
|
|
141
|
-
if (
|
|
142
|
-
|
|
143
|
-
|
|
153
|
+
/* istanbul ignore else */
|
|
154
|
+
if (wrapperRef.current) {
|
|
155
|
+
observer.observe(wrapperRef.current, {
|
|
156
|
+
subtree: true,
|
|
157
|
+
childList: true,
|
|
158
|
+
attributes: true
|
|
159
|
+
});
|
|
144
160
|
}
|
|
161
|
+
return () => observer.disconnect();
|
|
145
162
|
}, [selectedId]);
|
|
146
163
|
return /*#__PURE__*/_react.default.createElement(_flatTable.StyledFlatTableWrapper, _extends({
|
|
147
164
|
ref: wrapperRef,
|
|
@@ -13,7 +13,7 @@ var _flatTableCheckbox = _interopRequireDefault(require("./flat-table-checkbox/f
|
|
|
13
13
|
var _themes = require("../../style/themes");
|
|
14
14
|
var _flatTableCell = require("./flat-table-cell/flat-table-cell.style");
|
|
15
15
|
var _cellSizes = _interopRequireDefault(require("./cell-sizes.style"));
|
|
16
|
-
var _box = _interopRequireDefault(require("../box"));
|
|
16
|
+
var _box = _interopRequireDefault(require("../box/box.style"));
|
|
17
17
|
var _pager = require("../pager/pager.style");
|
|
18
18
|
var _addFocusStyling = _interopRequireDefault(require("../../style/utils/add-focus-styling"));
|
|
19
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -11,15 +11,10 @@ declare const StyledHeadingBackButton: import("styled-components").StyledCompone
|
|
|
11
11
|
declare type StyledHeadingTitleProps = {
|
|
12
12
|
withMargin?: boolean;
|
|
13
13
|
};
|
|
14
|
-
declare const StyledHeadingTitle: import("styled-components").StyledComponent<
|
|
15
|
-
as: import("react").
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
textTransform: string;
|
|
19
|
-
textDecoration: string;
|
|
20
|
-
lineHeight: string;
|
|
21
|
-
defaultMargin: string;
|
|
22
|
-
} & import("../typography").TypographyProps & StyledHeadingTitleProps, "as" | "textDecoration" | "size" | "lineHeight" | "textTransform" | "weight" | "defaultMargin">;
|
|
14
|
+
declare const StyledHeadingTitle: import("styled-components").StyledComponent<{
|
|
15
|
+
({ "data-component": dataComponent, variant, as, id, fontSize, fontWeight, textTransform, lineHeight, textDecoration, display, listStyleType, whiteSpace, wordWrap, textOverflow, truncate, color, backgroundColor, bg, opacity, children, className, ...rest }: import("../typography").TypographyProps): import("react").JSX.Element;
|
|
16
|
+
displayName: string;
|
|
17
|
+
}, any, StyledHeadingTitleProps, never>;
|
|
23
18
|
declare const StyledHeadingPills: import("styled-components").StyledComponent<"span", any, {}, never>;
|
|
24
19
|
declare type StyledSubHeaderProps = {
|
|
25
20
|
hasBackLink?: boolean;
|
|
@@ -7,7 +7,7 @@ exports.StyledMenuFullscreenHeader = exports.StyledMenuFullscreen = void 0;
|
|
|
7
7
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
8
8
|
var _themes = require("../../../style/themes");
|
|
9
9
|
var _iconButton = _interopRequireDefault(require("../../icon-button/icon-button.style"));
|
|
10
|
-
var _box = _interopRequireDefault(require("../../box"));
|
|
10
|
+
var _box = _interopRequireDefault(require("../../box/box.style"));
|
|
11
11
|
var _search = _interopRequireDefault(require("../../search/search.style"));
|
|
12
12
|
var _icon = _interopRequireDefault(require("../../icon/icon.style"));
|
|
13
13
|
var _button = _interopRequireDefault(require("../../button/button.style"));
|
|
@@ -7,7 +7,7 @@ exports.default = void 0;
|
|
|
7
7
|
var _styledComponents = _interopRequireWildcard(require("styled-components"));
|
|
8
8
|
var _menuItem = _interopRequireDefault(require("../menu-item/menu-item.style"));
|
|
9
9
|
var _menu = _interopRequireDefault(require("../menu.config"));
|
|
10
|
-
var _box = _interopRequireDefault(require("../../box/box.
|
|
10
|
+
var _box = _interopRequireDefault(require("../../box/box.style"));
|
|
11
11
|
var _menu2 = require("../menu.style");
|
|
12
12
|
var _link = require("../../link/link.style");
|
|
13
13
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
@@ -1,10 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
import {
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { SpaceProps } from "styled-system";
|
|
3
|
+
import { TagProps } from "../../__internal__/utils/helpers/tags";
|
|
3
4
|
declare const VARIANT_TYPES: readonly ["h1-large", "h1", "h2", "h3", "h4", "h5", "segment-header", "segment-header-small", "segment-subheader", "segment-subheader-alt", "p", "small", "big", "sup", "sub", "strong", "b", "em", "ul", "ol"];
|
|
4
5
|
export declare type VariantTypes = typeof VARIANT_TYPES[number];
|
|
5
|
-
export interface TypographyProps extends SpaceProps,
|
|
6
|
+
export interface TypographyProps extends SpaceProps, TagProps {
|
|
6
7
|
/** Override the variant component */
|
|
7
8
|
as?: React.ElementType;
|
|
9
|
+
/** Set the ID attribute of the Typography component */
|
|
10
|
+
id?: string;
|
|
11
|
+
/** Content to be rendered inside the Typography component */
|
|
12
|
+
children?: React.ReactNode;
|
|
8
13
|
/** The visual style to apply to the component */
|
|
9
14
|
variant?: VariantTypes;
|
|
10
15
|
/** Override the variant font-size */
|
|
@@ -21,22 +26,27 @@ export interface TypographyProps extends SpaceProps, ColorProps {
|
|
|
21
26
|
display?: string;
|
|
22
27
|
/** Override the list-style-type */
|
|
23
28
|
listStyleType?: string;
|
|
24
|
-
/** Override the white-space
|
|
29
|
+
/** Override the white-space */
|
|
25
30
|
whiteSpace?: string;
|
|
26
|
-
/** Override the word-wrap
|
|
31
|
+
/** Override the word-wrap */
|
|
27
32
|
wordWrap?: string;
|
|
28
|
-
/** Override the text-overflow
|
|
33
|
+
/** Override the text-overflow */
|
|
29
34
|
textOverflow?: string;
|
|
30
35
|
/** Apply truncation */
|
|
31
36
|
truncate?: boolean;
|
|
37
|
+
/** Override the color style */
|
|
38
|
+
color?: string;
|
|
39
|
+
/** Override the backgroundColor style */
|
|
40
|
+
backgroundColor?: string;
|
|
41
|
+
/** Override the bg value shorthand for backgroundColor */
|
|
42
|
+
bg?: string;
|
|
43
|
+
/** Override the opacity value */
|
|
44
|
+
opacity?: string | number;
|
|
45
|
+
/** @private @ignore */
|
|
46
|
+
className?: string;
|
|
32
47
|
}
|
|
33
|
-
declare const Typography:
|
|
34
|
-
as:
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
textTransform: string;
|
|
38
|
-
textDecoration: string;
|
|
39
|
-
lineHeight: string;
|
|
40
|
-
defaultMargin: string;
|
|
41
|
-
} & TypographyProps, "as" | "textDecoration" | "size" | "lineHeight" | "textTransform" | "weight" | "defaultMargin">;
|
|
48
|
+
export declare const Typography: {
|
|
49
|
+
({ "data-component": dataComponent, variant, as, id, fontSize, fontWeight, textTransform, lineHeight, textDecoration, display, listStyleType, whiteSpace, wordWrap, textOverflow, truncate, color, backgroundColor, bg, opacity, children, className, ...rest }: TypographyProps): React.JSX.Element;
|
|
50
|
+
displayName: string;
|
|
51
|
+
};
|
|
42
52
|
export default Typography;
|
|
@@ -3,210 +3,62 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
var
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
6
|
+
exports.default = exports.Typography = void 0;
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags"));
|
|
10
|
+
var _utils = require("../../style/utils");
|
|
11
|
+
var _typography = _interopRequireDefault(require("./typography.style"));
|
|
12
12
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
function
|
|
14
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
13
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
15
14
|
const VARIANT_TYPES = ["h1-large", "h1", "h2", "h3", "h4", "h5", "segment-header", "segment-header-small", "segment-subheader", "segment-subheader-alt", "p", "small", "big", "sup", "sub", "strong", "b", "em", "ul", "ol"];
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return "h1";
|
|
20
|
-
case "segment-header":
|
|
21
|
-
case "segment-header-small":
|
|
22
|
-
case "segment-subheader":
|
|
23
|
-
case "segment-subheader-alt":
|
|
24
|
-
return "h5";
|
|
25
|
-
case "big":
|
|
26
|
-
return "p";
|
|
27
|
-
default:
|
|
28
|
-
return variant;
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
const getSize = variant => {
|
|
32
|
-
switch (variant) {
|
|
33
|
-
case "h1-large":
|
|
34
|
-
return "32px";
|
|
35
|
-
case "h1":
|
|
36
|
-
return "24px";
|
|
37
|
-
case "h2":
|
|
38
|
-
return "22px";
|
|
39
|
-
case "h3":
|
|
40
|
-
case "segment-header":
|
|
41
|
-
return "20px";
|
|
42
|
-
case "h4":
|
|
43
|
-
case "segment-header-small":
|
|
44
|
-
return "18px";
|
|
45
|
-
case "h5":
|
|
46
|
-
case "segment-subheader":
|
|
47
|
-
case "big":
|
|
48
|
-
return "16px";
|
|
49
|
-
case "small":
|
|
50
|
-
case "sub":
|
|
51
|
-
case "sup":
|
|
52
|
-
return "13px";
|
|
53
|
-
case "segment-subheader-alt":
|
|
54
|
-
case "p":
|
|
55
|
-
case "b":
|
|
56
|
-
case "strong":
|
|
57
|
-
case "em":
|
|
58
|
-
default:
|
|
59
|
-
return "14px";
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
const getLineHeight = variant => {
|
|
63
|
-
switch (variant) {
|
|
64
|
-
case "h1-large":
|
|
65
|
-
return "40px";
|
|
66
|
-
case "h1":
|
|
67
|
-
case "segment-subheader":
|
|
68
|
-
return "31px";
|
|
69
|
-
case "h2":
|
|
70
|
-
return "29px";
|
|
71
|
-
case "h3":
|
|
72
|
-
case "segment-header":
|
|
73
|
-
return "26px";
|
|
74
|
-
case "big":
|
|
75
|
-
return "24px";
|
|
76
|
-
case "h4":
|
|
77
|
-
case "segment-header-small":
|
|
78
|
-
return "23px";
|
|
79
|
-
case "small":
|
|
80
|
-
case "sub":
|
|
81
|
-
case "sup":
|
|
82
|
-
return "20px";
|
|
83
|
-
case "h5":
|
|
84
|
-
case "segment-subheader-alt":
|
|
85
|
-
case "p":
|
|
86
|
-
case "b":
|
|
87
|
-
case "strong":
|
|
88
|
-
case "em":
|
|
89
|
-
default:
|
|
90
|
-
return "21px";
|
|
91
|
-
}
|
|
92
|
-
};
|
|
93
|
-
const getWeight = variant => {
|
|
94
|
-
switch (variant) {
|
|
95
|
-
case "h1-large":
|
|
96
|
-
case "h1":
|
|
97
|
-
case "segment-header":
|
|
98
|
-
case "segment-header-small":
|
|
99
|
-
return "900";
|
|
100
|
-
case "h2":
|
|
101
|
-
case "h3":
|
|
102
|
-
case "segment-subheader":
|
|
103
|
-
case "segment-subheader-alt":
|
|
104
|
-
case "b":
|
|
105
|
-
case "em":
|
|
106
|
-
case "strong":
|
|
107
|
-
return "700";
|
|
108
|
-
case "h4":
|
|
109
|
-
case "h5":
|
|
110
|
-
case "p":
|
|
111
|
-
case "small":
|
|
112
|
-
case "big":
|
|
113
|
-
case "sub":
|
|
114
|
-
case "sup":
|
|
115
|
-
default:
|
|
116
|
-
return "400";
|
|
117
|
-
}
|
|
118
|
-
};
|
|
119
|
-
const getTransform = variant => {
|
|
120
|
-
if (variant === "segment-subheader-alt") {
|
|
121
|
-
return "uppercase";
|
|
122
|
-
}
|
|
123
|
-
return "none";
|
|
124
|
-
};
|
|
125
|
-
const getDecoration = variant => {
|
|
126
|
-
if (variant === "em") {
|
|
127
|
-
return "underline";
|
|
128
|
-
}
|
|
129
|
-
return "none";
|
|
130
|
-
};
|
|
131
|
-
let isDeprecationWarningTriggered = false;
|
|
132
|
-
const Typography = _styledComponents.default.span.attrs(({
|
|
133
|
-
variant,
|
|
15
|
+
const Typography = ({
|
|
16
|
+
"data-component": dataComponent,
|
|
17
|
+
variant = "p",
|
|
134
18
|
as,
|
|
19
|
+
id,
|
|
135
20
|
fontSize,
|
|
136
21
|
fontWeight,
|
|
137
22
|
textTransform,
|
|
138
23
|
lineHeight,
|
|
139
|
-
textDecoration
|
|
140
|
-
}) => {
|
|
141
|
-
return {
|
|
142
|
-
as: as || getAs(variant),
|
|
143
|
-
size: fontSize || getSize(variant),
|
|
144
|
-
weight: fontWeight || getWeight(variant),
|
|
145
|
-
textTransform: textTransform || getTransform(variant),
|
|
146
|
-
textDecoration: textDecoration || getDecoration(variant),
|
|
147
|
-
lineHeight: lineHeight || getLineHeight(variant),
|
|
148
|
-
defaultMargin: variant === "p" ? "0 0 16px" : "0"
|
|
149
|
-
};
|
|
150
|
-
})`
|
|
151
|
-
${() => {
|
|
152
|
-
if (!isDeprecationWarningTriggered) {
|
|
153
|
-
isDeprecationWarningTriggered = true;
|
|
154
|
-
_logger.default.deprecate("Previous props that could be spread to the `Typography` component are being removed. Only props documented in the intefaces will be supported.");
|
|
155
|
-
}
|
|
156
|
-
return (0, _styledComponents.css)``;
|
|
157
|
-
}}
|
|
158
|
-
${({
|
|
159
|
-
size,
|
|
160
|
-
weight,
|
|
161
|
-
textTransform,
|
|
162
|
-
lineHeight,
|
|
163
|
-
defaultMargin,
|
|
164
24
|
textDecoration,
|
|
165
25
|
display,
|
|
166
|
-
variant,
|
|
167
26
|
listStyleType,
|
|
168
27
|
whiteSpace,
|
|
169
28
|
wordWrap,
|
|
170
29
|
textOverflow,
|
|
171
|
-
truncate
|
|
172
|
-
|
|
173
|
-
font-style: normal;
|
|
174
|
-
font-size: ${size};
|
|
175
|
-
font-weight: ${weight};
|
|
176
|
-
text-transform: ${textTransform};
|
|
177
|
-
text-decoration: ${textDecoration};
|
|
178
|
-
line-height: ${lineHeight};
|
|
179
|
-
margin: ${defaultMargin};
|
|
180
|
-
padding: 0;
|
|
181
|
-
white-space: ${truncate ? "nowrap" : whiteSpace};
|
|
182
|
-
word-wrap: ${wordWrap};
|
|
183
|
-
text-overflow: ${truncate ? "ellipsis" : textOverflow};
|
|
184
|
-
${truncate && (0, _styledComponents.css)`
|
|
185
|
-
overflow: hidden;
|
|
186
|
-
`};
|
|
187
|
-
${variant === "sup" && "vertical-align: super;"};
|
|
188
|
-
${variant === "sub" && "vertical-align: sub;"};
|
|
189
|
-
${display && `display: ${display};`};
|
|
190
|
-
${listStyleType && `list-style-type: ${listStyleType};`}; ;
|
|
191
|
-
`}
|
|
192
|
-
${_styledSystem.space}
|
|
193
|
-
${({
|
|
194
|
-
color,
|
|
195
|
-
bg,
|
|
30
|
+
truncate,
|
|
31
|
+
color = "blackOpacity90",
|
|
196
32
|
backgroundColor,
|
|
197
|
-
...rest
|
|
198
|
-
}) => (0, _color.default)({
|
|
199
|
-
color,
|
|
200
33
|
bg,
|
|
201
|
-
|
|
34
|
+
opacity,
|
|
35
|
+
children,
|
|
36
|
+
className,
|
|
202
37
|
...rest
|
|
203
|
-
})
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
38
|
+
}) => {
|
|
39
|
+
return /*#__PURE__*/_react.default.createElement(_typography.default, _extends({
|
|
40
|
+
variant: variant,
|
|
41
|
+
as: as,
|
|
42
|
+
id: id,
|
|
43
|
+
fontSize: fontSize,
|
|
44
|
+
fontWeight: fontWeight,
|
|
45
|
+
textTransform: textTransform,
|
|
46
|
+
lineHeight: lineHeight,
|
|
47
|
+
textDecoration: textDecoration,
|
|
48
|
+
display: display,
|
|
49
|
+
listStyleType: listStyleType,
|
|
50
|
+
whiteSpace: whiteSpace,
|
|
51
|
+
wordWrap: wordWrap,
|
|
52
|
+
textOverflow: textOverflow,
|
|
53
|
+
truncate: truncate,
|
|
54
|
+
color: color,
|
|
55
|
+
backgroundColor: backgroundColor,
|
|
56
|
+
bg: bg,
|
|
57
|
+
opacity: opacity,
|
|
58
|
+
className: className
|
|
59
|
+
}, (0, _tags.default)(dataComponent, rest), (0, _utils.filterStyledSystemMarginProps)(rest), (0, _utils.filterStyledSystemPaddingProps)(rest)), children);
|
|
209
60
|
};
|
|
61
|
+
exports.Typography = Typography;
|
|
210
62
|
Typography.displayName = "Typography";
|
|
211
63
|
var _default = Typography;
|
|
212
64
|
exports.default = _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { TypographyProps } from "./typography.component";
|
|
3
|
+
declare const StyledTypography: import("styled-components").StyledComponent<"span", any, {
|
|
4
|
+
as: import("react").ElementType<any> | undefined;
|
|
5
|
+
size: string;
|
|
6
|
+
weight: string;
|
|
7
|
+
textTransform: string;
|
|
8
|
+
textDecoration: string;
|
|
9
|
+
lineHeight: string;
|
|
10
|
+
defaultMargin: string;
|
|
11
|
+
} & TypographyProps, "as" | "textDecoration" | "size" | "weight" | "textTransform" | "lineHeight" | "defaultMargin">;
|
|
12
|
+
export default StyledTypography;
|