@cloudscape-design/components 3.0.588 → 3.0.590
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/box/interfaces.d.ts +7 -3
- package/box/interfaces.d.ts.map +1 -1
- package/box/interfaces.js.map +1 -1
- package/box/internal.js +1 -1
- package/box/internal.js.map +1 -1
- package/box/styles.css.js +191 -190
- package/box/styles.scoped.css +242 -235
- package/box/styles.selectors.js +191 -190
- package/internal/base-component/styles.scoped.css +5 -0
- package/internal/environment.js +1 -1
- package/internal/environment.json +1 -1
- package/internal/generated/styles/tokens.d.ts +1 -0
- package/internal/generated/styles/tokens.js +1 -0
- package/internal/generated/theming/index.cjs +38 -0
- package/internal/generated/theming/index.js +38 -0
- package/internal/manifest.json +1 -1
- package/package.json +1 -1
- package/table/body-cell/disabled-inline-editor.d.ts.map +1 -1
- package/table/body-cell/disabled-inline-editor.js +1 -0
- package/table/body-cell/disabled-inline-editor.js.map +1 -1
- package/table/body-cell/index.d.ts.map +1 -1
- package/table/body-cell/index.js +4 -3
- package/table/body-cell/index.js.map +1 -1
- package/table/body-cell/styles.css.js +42 -29
- package/table/body-cell/styles.scoped.css +312 -87
- package/table/body-cell/styles.selectors.js +42 -29
- package/table/body-cell/td-element.d.ts +2 -0
- package/table/body-cell/td-element.d.ts.map +1 -1
- package/table/body-cell/td-element.js +11 -4
- package/table/body-cell/td-element.js.map +1 -1
- package/table/expandable-rows/expand-toggle-button.d.ts +4 -0
- package/table/expandable-rows/expand-toggle-button.d.ts.map +1 -0
- package/table/expandable-rows/expand-toggle-button.js +19 -0
- package/table/expandable-rows/expand-toggle-button.js.map +1 -0
- package/table/expandable-rows/expandable-rows-utils.d.ts +24 -0
- package/table/expandable-rows/expandable-rows-utils.d.ts.map +1 -0
- package/table/expandable-rows/expandable-rows-utils.js +58 -0
- package/table/expandable-rows/expandable-rows-utils.js.map +1 -0
- package/table/expandable-rows/styles.css.js +8 -0
- package/table/expandable-rows/styles.scoped.css +197 -0
- package/table/expandable-rows/styles.selectors.js +9 -0
- package/table/header-cell/index.d.ts +2 -1
- package/table/header-cell/index.d.ts.map +1 -1
- package/table/header-cell/index.js +3 -2
- package/table/header-cell/index.js.map +1 -1
- package/table/header-cell/styles.css.js +25 -24
- package/table/header-cell/styles.scoped.css +65 -46
- package/table/header-cell/styles.selectors.js +25 -24
- package/table/interfaces.d.ts +31 -3
- package/table/interfaces.d.ts.map +1 -1
- package/table/interfaces.js.map +1 -1
- package/table/internal.d.ts.map +1 -1
- package/table/internal.js +41 -15
- package/table/internal.js.map +1 -1
- package/table/table-role/grid-navigation.js +4 -1
- package/table/table-role/grid-navigation.js.map +1 -1
- package/table/table-role/interfaces.d.ts +1 -1
- package/table/table-role/interfaces.d.ts.map +1 -1
- package/table/table-role/interfaces.js.map +1 -1
- package/table/table-role/table-role-helper.d.ts +5 -0
- package/table/table-role/table-role-helper.d.ts.map +1 -1
- package/table/table-role/table-role-helper.js +11 -6
- package/table/table-role/table-role-helper.js.map +1 -1
- package/table/thead.d.ts +1 -0
- package/table/thead.d.ts.map +1 -1
- package/table/thead.js +5 -2
- package/table/thead.js.map +1 -1
- package/table/use-table-focus-navigation.d.ts +2 -3
- package/table/use-table-focus-navigation.d.ts.map +1 -1
- package/table/use-table-focus-navigation.js +3 -3
- package/table/use-table-focus-navigation.js.map +1 -1
- package/test-utils/dom/table/index.d.ts +12 -0
- package/test-utils/dom/table/index.js +28 -1
- package/test-utils/dom/table/index.js.map +1 -1
- package/test-utils/selectors/table/index.d.ts +6 -0
- package/test-utils/selectors/table/index.js +14 -0
- package/test-utils/selectors/table/index.js.map +1 -1
- package/test-utils/tsconfig.tsbuildinfo +1 -1
|
@@ -2,34 +2,47 @@
|
|
|
2
2
|
// es-module interop with Babel and Typescript
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
module.exports.default = {
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"body-cell-
|
|
8
|
-
"
|
|
9
|
-
"
|
|
10
|
-
"body-cell-
|
|
11
|
-
"body-cell-
|
|
12
|
-
"
|
|
13
|
-
"
|
|
14
|
-
"body-cell-
|
|
15
|
-
"body-cell-
|
|
16
|
-
"body-cell-
|
|
17
|
-
"
|
|
18
|
-
"body-cell-
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"body-cell-
|
|
23
|
-
"body-cell-
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"body-cell-
|
|
27
|
-
"body-cell-
|
|
28
|
-
"body-cell-
|
|
29
|
-
"
|
|
30
|
-
"body-cell-
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
5
|
+
"expandable-toggle-wrapper": "awsui_expandable-toggle-wrapper_c6tup_19jo8_99",
|
|
6
|
+
"body-cell": "awsui_body-cell_c6tup_19jo8_107",
|
|
7
|
+
"body-cell-expandable-level-1": "awsui_body-cell-expandable-level-1_c6tup_19jo8_121",
|
|
8
|
+
"body-cell-expandable-level-2": "awsui_body-cell-expandable-level-2_c6tup_19jo8_124",
|
|
9
|
+
"body-cell-expandable-level-3": "awsui_body-cell-expandable-level-3_c6tup_19jo8_127",
|
|
10
|
+
"body-cell-expandable-level-4": "awsui_body-cell-expandable-level-4_c6tup_19jo8_130",
|
|
11
|
+
"body-cell-expandable-level-5": "awsui_body-cell-expandable-level-5_c6tup_19jo8_133",
|
|
12
|
+
"body-cell-expandable-level-6": "awsui_body-cell-expandable-level-6_c6tup_19jo8_136",
|
|
13
|
+
"body-cell-expandable-level-7": "awsui_body-cell-expandable-level-7_c6tup_19jo8_139",
|
|
14
|
+
"body-cell-expandable-level-8": "awsui_body-cell-expandable-level-8_c6tup_19jo8_142",
|
|
15
|
+
"body-cell-expandable-level-9": "awsui_body-cell-expandable-level-9_c6tup_19jo8_145",
|
|
16
|
+
"body-cell-expandable-level-next": "awsui_body-cell-expandable-level-next_c6tup_19jo8_148",
|
|
17
|
+
"sticky-cell": "awsui_sticky-cell_c6tup_19jo8_172",
|
|
18
|
+
"body-cell-wrap": "awsui_body-cell-wrap_c6tup_19jo8_175",
|
|
19
|
+
"is-visual-refresh": "awsui_is-visual-refresh_c6tup_19jo8_187",
|
|
20
|
+
"has-striped-rows": "awsui_has-striped-rows_c6tup_19jo8_199",
|
|
21
|
+
"body-cell-edit-active": "awsui_body-cell-edit-active_c6tup_19jo8_232",
|
|
22
|
+
"body-cell-interactive": "awsui_body-cell-interactive_c6tup_19jo8_232",
|
|
23
|
+
"body-cell-editable": "awsui_body-cell-editable_c6tup_19jo8_232",
|
|
24
|
+
"has-striped-rows-sticky-cell-pad-left": "awsui_has-striped-rows-sticky-cell-pad-left_c6tup_19jo8_298",
|
|
25
|
+
"has-selection": "awsui_has-selection_c6tup_19jo8_331",
|
|
26
|
+
"body-cell-first-row": "awsui_body-cell-first-row_c6tup_19jo8_367",
|
|
27
|
+
"body-cell-last-row": "awsui_body-cell-last-row_c6tup_19jo8_370",
|
|
28
|
+
"body-cell-selected": "awsui_body-cell-selected_c6tup_19jo8_370",
|
|
29
|
+
"has-footer": "awsui_has-footer_c6tup_19jo8_370",
|
|
30
|
+
"body-cell-shaded": "awsui_body-cell-shaded_c6tup_19jo8_380",
|
|
31
|
+
"sticky-cell-pad-left": "awsui_sticky-cell-pad-left_c6tup_19jo8_414",
|
|
32
|
+
"sticky-cell-last-right": "awsui_sticky-cell-last-right_c6tup_19jo8_461",
|
|
33
|
+
"sticky-cell-last-left": "awsui_sticky-cell-last-left_c6tup_19jo8_465",
|
|
34
|
+
"body-cell-next-selected": "awsui_body-cell-next-selected_c6tup_19jo8_488",
|
|
35
|
+
"body-cell-prev-selected": "awsui_body-cell-prev-selected_c6tup_19jo8_492",
|
|
36
|
+
"body-cell-editor-wrapper": "awsui_body-cell-editor-wrapper_c6tup_19jo8_516",
|
|
37
|
+
"body-cell-success": "awsui_body-cell-success_c6tup_19jo8_523",
|
|
38
|
+
"body-cell-editor": "awsui_body-cell-editor_c6tup_19jo8_516",
|
|
39
|
+
"body-cell-editor-disabled": "awsui_body-cell-editor-disabled_c6tup_19jo8_550",
|
|
40
|
+
"body-cell-editor-form": "awsui_body-cell-editor-form_c6tup_19jo8_559",
|
|
41
|
+
"body-cell-editor-row": "awsui_body-cell-editor-row_c6tup_19jo8_569",
|
|
42
|
+
"body-cell-editor-controls": "awsui_body-cell-editor-controls_c6tup_19jo8_579",
|
|
43
|
+
"body-cell-expandable": "awsui_body-cell-expandable_c6tup_19jo8_121",
|
|
44
|
+
"expandable-cell-content": "awsui_expandable-cell-content_c6tup_19jo8_603",
|
|
45
|
+
"body-cell-edit-disabled-popover": "awsui_body-cell-edit-disabled-popover_c6tup_19jo8_648",
|
|
46
|
+
"body-cell-has-success": "awsui_body-cell-has-success_c6tup_19jo8_652"
|
|
34
47
|
};
|
|
35
48
|
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { StickyColumnsModel } from '../sticky-columns';
|
|
3
3
|
import { TableRole } from '../table-role';
|
|
4
|
+
import { ExpandableItemProps } from '../expandable-rows/expandable-rows-utils';
|
|
4
5
|
export interface TableTdElementProps {
|
|
5
6
|
className?: string;
|
|
6
7
|
style?: React.CSSProperties;
|
|
@@ -25,6 +26,7 @@ export interface TableTdElementProps {
|
|
|
25
26
|
stickyState: StickyColumnsModel;
|
|
26
27
|
isVisualRefresh?: boolean;
|
|
27
28
|
tableRole: TableRole;
|
|
29
|
+
expandableProps?: ExpandableItemProps;
|
|
28
30
|
}
|
|
29
31
|
export declare const TableTdElement: React.ForwardRefExoticComponent<TableTdElementProps & React.RefAttributes<HTMLTableCellElement>>;
|
|
30
32
|
//# sourceMappingURL=td-element.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"td-element.d.ts","sourceRoot":"","sources":["../../../../src/table/body-cell/td-element.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAGtC,OAAO,EAAE,kBAAkB,EAAuB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAyB,MAAM,eAAe,CAAC;AAIjE,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,IAAI,CACrB,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,EAC3F,OAAO,GAAG,WAAW,GAAG,SAAS,CAClC,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"td-element.d.ts","sourceRoot":"","sources":["../../../../src/table/body-cell/td-element.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAGtC,OAAO,EAAE,kBAAkB,EAAuB,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAyB,MAAM,eAAe,CAAC;AAIjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAE/E,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,IAAI,CACrB,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,EAC3F,OAAO,GAAG,WAAW,GAAG,SAAS,CAClC,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,WAAW,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,kBAAkB,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,CAAC,EAAE,mBAAmB,CAAC;CACvC;AAED,eAAO,MAAM,cAAc,kGAiF1B,CAAC"}
|
|
@@ -6,9 +6,10 @@ import styles from './styles.css.js';
|
|
|
6
6
|
import { getStickyClassNames } from '../utils';
|
|
7
7
|
import { useStickyCellStyles } from '../sticky-columns';
|
|
8
8
|
import { getTableCellRoleProps } from '../table-role';
|
|
9
|
-
import { useMergeRefs } from '../../internal/hooks/use-merge-refs
|
|
10
|
-
import { useSingleTabStopNavigation } from '../../internal/context/single-tab-stop-navigation-context
|
|
11
|
-
|
|
9
|
+
import { useMergeRefs } from '../../internal/hooks/use-merge-refs';
|
|
10
|
+
import { useSingleTabStopNavigation } from '../../internal/context/single-tab-stop-navigation-context';
|
|
11
|
+
import { ExpandToggle } from '../expandable-rows/expand-toggle-button';
|
|
12
|
+
export const TableTdElement = React.forwardRef(({ className, style, children, wrapLines, isRowHeader, isFirstRow, isLastRow, isSelected, isNextSelected, isPrevSelected, nativeAttributes, onClick, onMouseEnter, onMouseLeave, isEvenRow, stripedRows, isVisualRefresh, hasSelection, hasFooter, columnId, colIndex, stickyState, tableRole, expandableProps, }, ref) => {
|
|
12
13
|
const Element = isRowHeader ? 'th' : 'td';
|
|
13
14
|
nativeAttributes = Object.assign(Object.assign({}, nativeAttributes), getTableCellRoleProps({ tableRole, isRowHeader, colIndex }));
|
|
14
15
|
const stickyStyles = useStickyCellStyles({
|
|
@@ -19,6 +20,12 @@ export const TableTdElement = React.forwardRef(({ className, style, children, wr
|
|
|
19
20
|
const cellRefObject = useRef(null);
|
|
20
21
|
const mergedRef = useMergeRefs(stickyStyles.ref, ref, cellRefObject);
|
|
21
22
|
const { tabIndex: cellTabIndex } = useSingleTabStopNavigation(cellRefObject);
|
|
22
|
-
return (React.createElement(Element, Object.assign({ style: Object.assign(Object.assign({}, style), stickyStyles.style), className: clsx(className, styles['body-cell'], wrapLines && styles['body-cell-wrap'], isFirstRow && styles['body-cell-first-row'], isLastRow && styles['body-cell-last-row'], isSelected && styles['body-cell-selected'], isNextSelected && styles['body-cell-next-selected'], isPrevSelected && styles['body-cell-prev-selected'], !isEvenRow && stripedRows && styles['body-cell-shaded'], stripedRows && styles['has-striped-rows'], isVisualRefresh && styles['is-visual-refresh'], hasSelection && styles['has-selection'], hasFooter && styles['has-footer'], stickyStyles.className), onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ref: mergedRef }, nativeAttributes, { tabIndex: cellTabIndex }),
|
|
23
|
+
return (React.createElement(Element, Object.assign({ style: Object.assign(Object.assign({}, style), stickyStyles.style), className: clsx(className, styles['body-cell'], wrapLines && styles['body-cell-wrap'], isFirstRow && styles['body-cell-first-row'], isLastRow && styles['body-cell-last-row'], isSelected && styles['body-cell-selected'], isNextSelected && styles['body-cell-next-selected'], isPrevSelected && styles['body-cell-prev-selected'], !isEvenRow && stripedRows && styles['body-cell-shaded'], stripedRows && styles['has-striped-rows'], isVisualRefresh && styles['is-visual-refresh'], hasSelection && styles['has-selection'], hasFooter && styles['has-footer'], !!expandableProps && styles['body-cell-expandable'], !!expandableProps && styles[`body-cell-expandable-level-${getLevelClassSuffix(expandableProps.level)}`], stickyStyles.className), onClick: onClick, onMouseEnter: onMouseEnter, onMouseLeave: onMouseLeave, ref: mergedRef }, nativeAttributes, { tabIndex: cellTabIndex }),
|
|
24
|
+
expandableProps && (React.createElement("div", { className: styles['expandable-toggle-wrapper'] },
|
|
25
|
+
React.createElement(ExpandToggle, Object.assign({}, expandableProps)))),
|
|
26
|
+
children));
|
|
23
27
|
});
|
|
28
|
+
function getLevelClassSuffix(level) {
|
|
29
|
+
return 1 <= level && level <= 9 ? level : 'next';
|
|
30
|
+
}
|
|
24
31
|
//# sourceMappingURL=td-element.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"td-element.js","sourceRoot":"","sources":["../../../../src/table/body-cell/td-element.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAsB,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAa,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"td-element.js","sourceRoot":"","sources":["../../../../src/table/body-cell/td-element.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { useRef } from 'react';\nimport styles from './styles.css.js';\nimport { getStickyClassNames } from '../utils';\nimport { StickyColumnsModel, useStickyCellStyles } from '../sticky-columns';\nimport { TableRole, getTableCellRoleProps } from '../table-role';\nimport { useMergeRefs } from '../../internal/hooks/use-merge-refs';\nimport { useSingleTabStopNavigation } from '../../internal/context/single-tab-stop-navigation-context';\nimport { ExpandToggle } from '../expandable-rows/expand-toggle-button';\nimport { ExpandableItemProps } from '../expandable-rows/expandable-rows-utils';\n\nexport interface TableTdElementProps {\n className?: string;\n style?: React.CSSProperties;\n wrapLines: boolean | undefined;\n isRowHeader?: boolean;\n isFirstRow: boolean;\n isLastRow: boolean;\n isSelected: boolean;\n isNextSelected: boolean;\n isPrevSelected: boolean;\n nativeAttributes?: Omit<\n React.TdHTMLAttributes<HTMLTableCellElement> | React.ThHTMLAttributes<HTMLTableCellElement>,\n 'style' | 'className' | 'onClick'\n >;\n onClick?: () => void;\n onMouseEnter?: () => void;\n onMouseLeave?: () => void;\n children?: React.ReactNode;\n isEvenRow?: boolean;\n stripedRows?: boolean;\n hasSelection?: boolean;\n hasFooter?: boolean;\n columnId: PropertyKey;\n colIndex: number;\n stickyState: StickyColumnsModel;\n isVisualRefresh?: boolean;\n tableRole: TableRole;\n expandableProps?: ExpandableItemProps;\n}\n\nexport const TableTdElement = React.forwardRef<HTMLTableCellElement, TableTdElementProps>(\n (\n {\n className,\n style,\n children,\n wrapLines,\n isRowHeader,\n isFirstRow,\n isLastRow,\n isSelected,\n isNextSelected,\n isPrevSelected,\n nativeAttributes,\n onClick,\n onMouseEnter,\n onMouseLeave,\n isEvenRow,\n stripedRows,\n isVisualRefresh,\n hasSelection,\n hasFooter,\n columnId,\n colIndex,\n stickyState,\n tableRole,\n expandableProps,\n },\n ref\n ) => {\n const Element = isRowHeader ? 'th' : 'td';\n\n nativeAttributes = { ...nativeAttributes, ...getTableCellRoleProps({ tableRole, isRowHeader, colIndex }) };\n\n const stickyStyles = useStickyCellStyles({\n stickyColumns: stickyState,\n columnId,\n getClassName: props => getStickyClassNames(styles, props),\n });\n\n const cellRefObject = useRef<HTMLTableCellElement>(null);\n const mergedRef = useMergeRefs(stickyStyles.ref, ref, cellRefObject);\n const { tabIndex: cellTabIndex } = useSingleTabStopNavigation(cellRefObject);\n\n return (\n <Element\n style={{ ...style, ...stickyStyles.style }}\n className={clsx(\n className,\n styles['body-cell'],\n wrapLines && styles['body-cell-wrap'],\n isFirstRow && styles['body-cell-first-row'],\n isLastRow && styles['body-cell-last-row'],\n isSelected && styles['body-cell-selected'],\n isNextSelected && styles['body-cell-next-selected'],\n isPrevSelected && styles['body-cell-prev-selected'],\n !isEvenRow && stripedRows && styles['body-cell-shaded'],\n stripedRows && styles['has-striped-rows'],\n isVisualRefresh && styles['is-visual-refresh'],\n hasSelection && styles['has-selection'],\n hasFooter && styles['has-footer'],\n !!expandableProps && styles['body-cell-expandable'],\n !!expandableProps && styles[`body-cell-expandable-level-${getLevelClassSuffix(expandableProps.level)}`],\n stickyStyles.className\n )}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n ref={mergedRef}\n {...nativeAttributes}\n tabIndex={cellTabIndex}\n >\n {expandableProps && (\n <div className={styles['expandable-toggle-wrapper']}>\n <ExpandToggle {...expandableProps} />\n </div>\n )}\n {children}\n </Element>\n );\n }\n);\n\nfunction getLevelClassSuffix(level: number) {\n return 1 <= level && level <= 9 ? level : 'next';\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expand-toggle-button.d.ts","sourceRoot":"","sources":["../../../../src/table/expandable-rows/expand-toggle-button.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAG9D,wBAAgB,YAAY,CAAC,EAAE,YAAY,EAAE,GAAG,KAAK,EAAE,EAAE,mBAAmB,sBAE3E"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { __rest } from "tslib";
|
|
4
|
+
import React, { useRef } from 'react';
|
|
5
|
+
import { useSingleTabStopNavigation } from '../../internal/context/single-tab-stop-navigation-context';
|
|
6
|
+
import styles from './styles.css.js';
|
|
7
|
+
import InternalIcon from '../../icon/internal';
|
|
8
|
+
import clsx from 'clsx';
|
|
9
|
+
export function ExpandToggle(_a) {
|
|
10
|
+
var { isExpandable } = _a, props = __rest(_a, ["isExpandable"]);
|
|
11
|
+
return isExpandable ? React.createElement(ExpandToggleButton, Object.assign({}, props)) : null;
|
|
12
|
+
}
|
|
13
|
+
function ExpandToggleButton({ isExpanded, onExpandableItemToggle, expandButtonLabel, collapseButtonLabel, }) {
|
|
14
|
+
const buttonRef = useRef(null);
|
|
15
|
+
const { tabIndex } = useSingleTabStopNavigation(buttonRef);
|
|
16
|
+
return (React.createElement("button", { ref: buttonRef, tabIndex: tabIndex, "aria-label": isExpanded ? collapseButtonLabel : expandButtonLabel, "aria-expanded": isExpanded, className: styles['expand-toggle'], onClick: onExpandableItemToggle },
|
|
17
|
+
React.createElement(InternalIcon, { size: "small", name: "caret-down-filled", className: clsx(styles['expand-toggle-icon'], isExpanded && styles['expand-toggle-icon-expanded']) })));
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=expand-toggle-button.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expand-toggle-button.js","sourceRoot":"","sources":["../../../../src/table/expandable-rows/expand-toggle-button.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;;AAEtC,OAAO,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,0BAA0B,EAAE,MAAM,2DAA2D,CAAC;AACvG,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,YAAY,MAAM,qBAAqB,CAAC;AAE/C,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,MAAM,UAAU,YAAY,CAAC,EAA+C;QAA/C,EAAE,YAAY,OAAiC,EAA5B,KAAK,cAAxB,gBAA0B,CAAF;IACnD,OAAO,YAAY,CAAC,CAAC,CAAC,oBAAC,kBAAkB,oBAAK,KAAK,EAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACjE,CAAC;AAED,SAAS,kBAAkB,CAAC,EAC1B,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,mBAAmB,GACuB;IAC1C,MAAM,SAAS,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAClD,MAAM,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IAC3D,OAAO,CACL,gCACE,GAAG,EAAE,SAAS,EACd,QAAQ,EAAE,QAAQ,gBACN,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,iBAAiB,mBACjD,UAAU,EACzB,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,EAClC,OAAO,EAAE,sBAAsB;QAE/B,oBAAC,YAAY,IACX,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,mBAAmB,EACxB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,UAAU,IAAI,MAAM,CAAC,6BAA6B,CAAC,CAAC,GAClG,CACK,CACV,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport React, { useRef } from 'react';\nimport { useSingleTabStopNavigation } from '../../internal/context/single-tab-stop-navigation-context';\nimport styles from './styles.css.js';\nimport InternalIcon from '../../icon/internal';\nimport { ExpandableItemProps } from './expandable-rows-utils';\nimport clsx from 'clsx';\n\nexport function ExpandToggle({ isExpandable, ...props }: ExpandableItemProps) {\n return isExpandable ? <ExpandToggleButton {...props} /> : null;\n}\n\nfunction ExpandToggleButton({\n isExpanded,\n onExpandableItemToggle,\n expandButtonLabel,\n collapseButtonLabel,\n}: Omit<ExpandableItemProps, 'isExpandable'>) {\n const buttonRef = useRef<HTMLButtonElement>(null);\n const { tabIndex } = useSingleTabStopNavigation(buttonRef);\n return (\n <button\n ref={buttonRef}\n tabIndex={tabIndex}\n aria-label={isExpanded ? collapseButtonLabel : expandButtonLabel}\n aria-expanded={isExpanded}\n className={styles['expand-toggle']}\n onClick={onExpandableItemToggle}\n >\n <InternalIcon\n size=\"small\"\n name=\"caret-down-filled\"\n className={clsx(styles['expand-toggle-icon'], isExpanded && styles['expand-toggle-icon-expanded'])}\n />\n </button>\n );\n}\n"]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TableProps } from '../interfaces';
|
|
2
|
+
export interface ExpandableItemProps extends ExpandableItemPlacement {
|
|
3
|
+
isExpandable: boolean;
|
|
4
|
+
isExpanded: boolean;
|
|
5
|
+
onExpandableItemToggle: () => void;
|
|
6
|
+
expandButtonLabel?: string;
|
|
7
|
+
collapseButtonLabel?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ExpandableItemPlacement {
|
|
10
|
+
level: number;
|
|
11
|
+
setSize: number;
|
|
12
|
+
posInSet: number;
|
|
13
|
+
}
|
|
14
|
+
export declare function useExpandableTableProps<T>({ items, expandableRows, trackBy, ariaLabels, }: {
|
|
15
|
+
items: readonly T[];
|
|
16
|
+
expandableRows?: TableProps.ExpandableRows<T>;
|
|
17
|
+
trackBy?: TableProps.TrackBy<T>;
|
|
18
|
+
ariaLabels?: TableProps.AriaLabels<T>;
|
|
19
|
+
}): {
|
|
20
|
+
isExpandable: boolean;
|
|
21
|
+
allItems: readonly T[];
|
|
22
|
+
getExpandableItemProps: (item: T) => ExpandableItemProps;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=expandable-rows-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expandable-rows-utils.d.ts","sourceRoot":"","sources":["../../../../src/table/expandable-rows/expandable-rows-utils.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IAClE,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,EACzC,KAAK,EACL,cAAc,EACd,OAAO,EACP,UAAU,GACX,EAAE;IACD,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;IACpB,cAAc,CAAC,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAChC,UAAU,CAAC,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;CACvC;;;mCA6CuC,CAAC,KAAG,mBAAmB;EAgB9D"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
3
|
+
import { useInternalI18n } from '../../i18n/context';
|
|
4
|
+
import { fireNonCancelableEvent } from '../../internal/events';
|
|
5
|
+
import { ItemSet } from '../selection/utils';
|
|
6
|
+
export function useExpandableTableProps({ items, expandableRows, trackBy, ariaLabels, }) {
|
|
7
|
+
var _a;
|
|
8
|
+
const i18n = useInternalI18n('table');
|
|
9
|
+
const isExpandable = !!expandableRows;
|
|
10
|
+
const expandedSet = new ItemSet(trackBy, (_a = expandableRows === null || expandableRows === void 0 ? void 0 : expandableRows.expandedItems) !== null && _a !== void 0 ? _a : []);
|
|
11
|
+
let allItems = items;
|
|
12
|
+
const itemToPlacement = new Map();
|
|
13
|
+
const getItemLevel = (item) => { var _a, _b; return (_b = (_a = itemToPlacement.get(item)) === null || _a === void 0 ? void 0 : _a.level) !== null && _b !== void 0 ? _b : 0; };
|
|
14
|
+
if (isExpandable) {
|
|
15
|
+
const visibleItems = new Array();
|
|
16
|
+
const traverse = (item, placement) => {
|
|
17
|
+
itemToPlacement.set(item, placement);
|
|
18
|
+
visibleItems.push(item);
|
|
19
|
+
if (expandedSet.has(item)) {
|
|
20
|
+
const children = expandableRows.getItemChildren(item);
|
|
21
|
+
expandableRows
|
|
22
|
+
.getItemChildren(item)
|
|
23
|
+
.forEach((child, index) => traverse(child, { level: placement.level + 1, setSize: children.length, posInSet: index + 1 }));
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
items.forEach((item, index) => traverse(item, { level: 1, setSize: items.length, posInSet: index + 1 }));
|
|
27
|
+
for (let index = 0; index < visibleItems.length; index++) {
|
|
28
|
+
const item = visibleItems[index];
|
|
29
|
+
if (expandedSet.has(item)) {
|
|
30
|
+
let insertionIndex = index + 1;
|
|
31
|
+
for (insertionIndex; insertionIndex < visibleItems.length; insertionIndex++) {
|
|
32
|
+
const insertionItem = visibleItems[insertionIndex];
|
|
33
|
+
if (getItemLevel(item) >= getItemLevel(insertionItem)) {
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
insertionIndex--;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
allItems = visibleItems;
|
|
41
|
+
}
|
|
42
|
+
const getExpandableItemProps = (item) => {
|
|
43
|
+
var _a, _b, _c, _d;
|
|
44
|
+
const { level, setSize, posInSet } = (_a = itemToPlacement.get(item)) !== null && _a !== void 0 ? _a : { level: 1, setSize: 1, posInSet: 1 };
|
|
45
|
+
return {
|
|
46
|
+
level,
|
|
47
|
+
setSize,
|
|
48
|
+
posInSet,
|
|
49
|
+
isExpandable: (_b = expandableRows === null || expandableRows === void 0 ? void 0 : expandableRows.isItemExpandable(item)) !== null && _b !== void 0 ? _b : true,
|
|
50
|
+
isExpanded: expandedSet.has(item),
|
|
51
|
+
onExpandableItemToggle: () => fireNonCancelableEvent(expandableRows === null || expandableRows === void 0 ? void 0 : expandableRows.onExpandableItemToggle, { item, expanded: !expandedSet.has(item) }),
|
|
52
|
+
expandButtonLabel: i18n('ariaLabels.expandButtonLabel', (_c = ariaLabels === null || ariaLabels === void 0 ? void 0 : ariaLabels.expandButtonLabel) === null || _c === void 0 ? void 0 : _c.call(ariaLabels, item)),
|
|
53
|
+
collapseButtonLabel: i18n('ariaLabels.collapseButtonLabel', (_d = ariaLabels === null || ariaLabels === void 0 ? void 0 : ariaLabels.collapseButtonLabel) === null || _d === void 0 ? void 0 : _d.call(ariaLabels, item)),
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
return { isExpandable, allItems, getExpandableItemProps };
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=expandable-rows-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expandable-rows-utils.js","sourceRoot":"","sources":["../../../../src/table/expandable-rows/expandable-rows-utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { useInternalI18n } from '../../i18n/context';\nimport { fireNonCancelableEvent } from '../../internal/events';\nimport { TableProps } from '../interfaces';\nimport { ItemSet } from '../selection/utils';\n\nexport interface ExpandableItemProps extends ExpandableItemPlacement {\n isExpandable: boolean;\n isExpanded: boolean;\n onExpandableItemToggle: () => void;\n expandButtonLabel?: string;\n collapseButtonLabel?: string;\n}\n\nexport interface ExpandableItemPlacement {\n level: number;\n setSize: number;\n posInSet: number;\n}\n\nexport function useExpandableTableProps<T>({\n items,\n expandableRows,\n trackBy,\n ariaLabels,\n}: {\n items: readonly T[];\n expandableRows?: TableProps.ExpandableRows<T>;\n trackBy?: TableProps.TrackBy<T>;\n ariaLabels?: TableProps.AriaLabels<T>;\n}) {\n const i18n = useInternalI18n('table');\n const isExpandable = !!expandableRows;\n\n const expandedSet = new ItemSet(trackBy, expandableRows?.expandedItems ?? []);\n\n let allItems = items;\n const itemToPlacement = new Map<T, ExpandableItemPlacement>();\n const getItemLevel = (item: T) => itemToPlacement.get(item)?.level ?? 0;\n\n if (isExpandable) {\n const visibleItems = new Array<T>();\n\n const traverse = (item: T, placement: ExpandableItemPlacement) => {\n itemToPlacement.set(item, placement);\n\n visibleItems.push(item);\n if (expandedSet.has(item)) {\n const children = expandableRows.getItemChildren(item);\n expandableRows\n .getItemChildren(item)\n .forEach((child, index) =>\n traverse(child, { level: placement.level + 1, setSize: children.length, posInSet: index + 1 })\n );\n }\n };\n items.forEach((item, index) => traverse(item, { level: 1, setSize: items.length, posInSet: index + 1 }));\n\n for (let index = 0; index < visibleItems.length; index++) {\n const item = visibleItems[index];\n if (expandedSet.has(item)) {\n let insertionIndex = index + 1;\n for (insertionIndex; insertionIndex < visibleItems.length; insertionIndex++) {\n const insertionItem = visibleItems[insertionIndex];\n if (getItemLevel(item) >= getItemLevel(insertionItem)) {\n break;\n }\n }\n insertionIndex--;\n }\n }\n\n allItems = visibleItems;\n }\n\n const getExpandableItemProps = (item: T): ExpandableItemProps => {\n const { level, setSize, posInSet } = itemToPlacement.get(item) ?? { level: 1, setSize: 1, posInSet: 1 };\n return {\n level,\n setSize,\n posInSet,\n isExpandable: expandableRows?.isItemExpandable(item) ?? true,\n isExpanded: expandedSet.has(item),\n onExpandableItemToggle: () =>\n fireNonCancelableEvent(expandableRows?.onExpandableItemToggle, { item, expanded: !expandedSet.has(item) }),\n expandButtonLabel: i18n('ariaLabels.expandButtonLabel', ariaLabels?.expandButtonLabel?.(item)),\n collapseButtonLabel: i18n('ariaLabels.collapseButtonLabel', ariaLabels?.collapseButtonLabel?.(item)),\n };\n };\n\n return { isExpandable, allItems, getExpandableItemProps };\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
|
|
2
|
+
import './styles.scoped.css';
|
|
3
|
+
export default {
|
|
4
|
+
"expand-toggle-icon": "awsui_expand-toggle-icon_1ss49_1izvf_99",
|
|
5
|
+
"expand-toggle-icon-expanded": "awsui_expand-toggle-icon-expanded_1ss49_1izvf_120",
|
|
6
|
+
"expand-toggle": "awsui_expand-toggle_1ss49_1izvf_99"
|
|
7
|
+
};
|
|
8
|
+
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
3
|
+
SPDX-License-Identifier: Apache-2.0
|
|
4
|
+
*/
|
|
5
|
+
/* stylelint-disable plugin/no-unsupported-browser-features */
|
|
6
|
+
/* stylelint-enable plugin/no-unsupported-browser-features */
|
|
7
|
+
/*
|
|
8
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
9
|
+
SPDX-License-Identifier: Apache-2.0
|
|
10
|
+
*/
|
|
11
|
+
/*
|
|
12
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
13
|
+
SPDX-License-Identifier: Apache-2.0
|
|
14
|
+
*/
|
|
15
|
+
/*
|
|
16
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
17
|
+
SPDX-License-Identifier: Apache-2.0
|
|
18
|
+
*/
|
|
19
|
+
/*
|
|
20
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
21
|
+
SPDX-License-Identifier: Apache-2.0
|
|
22
|
+
*/
|
|
23
|
+
/*
|
|
24
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
25
|
+
SPDX-License-Identifier: Apache-2.0
|
|
26
|
+
*/
|
|
27
|
+
/*
|
|
28
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
29
|
+
SPDX-License-Identifier: Apache-2.0
|
|
30
|
+
*/
|
|
31
|
+
/*
|
|
32
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
33
|
+
SPDX-License-Identifier: Apache-2.0
|
|
34
|
+
*/
|
|
35
|
+
/*
|
|
36
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
37
|
+
SPDX-License-Identifier: Apache-2.0
|
|
38
|
+
*/
|
|
39
|
+
/*
|
|
40
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
41
|
+
SPDX-License-Identifier: Apache-2.0
|
|
42
|
+
*/
|
|
43
|
+
/*
|
|
44
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
45
|
+
SPDX-License-Identifier: Apache-2.0
|
|
46
|
+
*/
|
|
47
|
+
/*
|
|
48
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
49
|
+
SPDX-License-Identifier: Apache-2.0
|
|
50
|
+
*/
|
|
51
|
+
/*
|
|
52
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
53
|
+
SPDX-License-Identifier: Apache-2.0
|
|
54
|
+
*/
|
|
55
|
+
/*
|
|
56
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
57
|
+
SPDX-License-Identifier: Apache-2.0
|
|
58
|
+
*/
|
|
59
|
+
/*
|
|
60
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
61
|
+
SPDX-License-Identifier: Apache-2.0
|
|
62
|
+
*/
|
|
63
|
+
/*
|
|
64
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
65
|
+
SPDX-License-Identifier: Apache-2.0
|
|
66
|
+
*/
|
|
67
|
+
/*
|
|
68
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
69
|
+
SPDX-License-Identifier: Apache-2.0
|
|
70
|
+
*/
|
|
71
|
+
/* stylelint-disable @cloudscape-design/no-motion-outside-of-mixin, selector-combinator-disallowed-list, selector-pseudo-class-no-unknown, selector-class-pattern */
|
|
72
|
+
/* stylelint-enable @cloudscape-design/no-motion-outside-of-mixin, selector-combinator-disallowed-list, selector-pseudo-class-no-unknown, selector-class-pattern */
|
|
73
|
+
/*
|
|
74
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
75
|
+
SPDX-License-Identifier: Apache-2.0
|
|
76
|
+
*/
|
|
77
|
+
/*
|
|
78
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
79
|
+
SPDX-License-Identifier: Apache-2.0
|
|
80
|
+
*/
|
|
81
|
+
/*
|
|
82
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
83
|
+
SPDX-License-Identifier: Apache-2.0
|
|
84
|
+
*/
|
|
85
|
+
/*
|
|
86
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
87
|
+
SPDX-License-Identifier: Apache-2.0
|
|
88
|
+
*/
|
|
89
|
+
/* Style used for links in slots/components that are text heavy, to help links stand out among
|
|
90
|
+
surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F73#description */
|
|
91
|
+
/*
|
|
92
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
93
|
+
SPDX-License-Identifier: Apache-2.0
|
|
94
|
+
*/
|
|
95
|
+
/*
|
|
96
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
97
|
+
SPDX-License-Identifier: Apache-2.0
|
|
98
|
+
*/
|
|
99
|
+
.awsui_expand-toggle-icon_1ss49_1izvf_99:not(#\9) {
|
|
100
|
+
transition: transform var(--motion-duration-rotate-90-4ry26y, 135ms) var(--motion-easing-rotate-90-sb4dk7, cubic-bezier(0.165, 0.84, 0.44, 1));
|
|
101
|
+
}
|
|
102
|
+
@media (prefers-reduced-motion: reduce) {
|
|
103
|
+
.awsui_expand-toggle-icon_1ss49_1izvf_99:not(#\9) {
|
|
104
|
+
animation: none;
|
|
105
|
+
transition: none;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
.awsui-motion-disabled .awsui_expand-toggle-icon_1ss49_1izvf_99:not(#\9), .awsui-mode-entering .awsui_expand-toggle-icon_1ss49_1izvf_99:not(#\9) {
|
|
109
|
+
animation: none;
|
|
110
|
+
transition: none;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/*
|
|
114
|
+
Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
115
|
+
SPDX-License-Identifier: Apache-2.0
|
|
116
|
+
*/
|
|
117
|
+
.awsui_expand-toggle-icon_1ss49_1izvf_99:not(#\9) {
|
|
118
|
+
transform: rotate(-90deg);
|
|
119
|
+
}
|
|
120
|
+
.awsui_expand-toggle-icon-expanded_1ss49_1izvf_120:not(#\9) {
|
|
121
|
+
transform: rotate(0deg);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.awsui_expand-toggle_1ss49_1izvf_99:not(#\9) {
|
|
125
|
+
border-collapse: separate;
|
|
126
|
+
border-spacing: 0;
|
|
127
|
+
box-sizing: border-box;
|
|
128
|
+
caption-side: top;
|
|
129
|
+
cursor: auto;
|
|
130
|
+
direction: inherit;
|
|
131
|
+
empty-cells: show;
|
|
132
|
+
font-family: serif;
|
|
133
|
+
font-size: medium;
|
|
134
|
+
font-style: normal;
|
|
135
|
+
font-variant: normal;
|
|
136
|
+
font-weight: 400;
|
|
137
|
+
font-stretch: normal;
|
|
138
|
+
line-height: normal;
|
|
139
|
+
-webkit-hyphens: none;
|
|
140
|
+
hyphens: none;
|
|
141
|
+
letter-spacing: normal;
|
|
142
|
+
list-style: disc outside none;
|
|
143
|
+
tab-size: 8;
|
|
144
|
+
text-align: start;
|
|
145
|
+
text-indent: 0;
|
|
146
|
+
text-shadow: none;
|
|
147
|
+
text-transform: none;
|
|
148
|
+
visibility: visible;
|
|
149
|
+
white-space: normal;
|
|
150
|
+
word-spacing: normal;
|
|
151
|
+
font-size: var(--font-size-body-m-x4okxb, 14px);
|
|
152
|
+
line-height: var(--line-height-body-m-30ar75, 20px);
|
|
153
|
+
color: var(--color-text-body-default-at06ol, #000716);
|
|
154
|
+
font-weight: 400;
|
|
155
|
+
font-family: var(--font-family-base-dnvic8, "Open Sans", "Helvetica Neue", Roboto, Arial, sans-serif);
|
|
156
|
+
-webkit-font-smoothing: auto;
|
|
157
|
+
-moz-osx-font-smoothing: auto;
|
|
158
|
+
cursor: pointer;
|
|
159
|
+
inline-size: var(--space-m-udix3p, 16px);
|
|
160
|
+
block-size: var(--space-m-udix3p, 16px);
|
|
161
|
+
border-block: 0;
|
|
162
|
+
border-inline: 0;
|
|
163
|
+
margin-block: 0;
|
|
164
|
+
margin-inline: 0;
|
|
165
|
+
padding-block: 0;
|
|
166
|
+
padding-inline: 0;
|
|
167
|
+
background: none;
|
|
168
|
+
outline: 0;
|
|
169
|
+
color: var(--color-text-interactive-default-lnx6lk, #414d5c);
|
|
170
|
+
}
|
|
171
|
+
body[data-awsui-focus-visible=true] .awsui_expand-toggle_1ss49_1izvf_99:not(#\9):focus {
|
|
172
|
+
position: relative;
|
|
173
|
+
}
|
|
174
|
+
body[data-awsui-focus-visible=true] .awsui_expand-toggle_1ss49_1izvf_99:not(#\9):focus {
|
|
175
|
+
outline: 2px dotted transparent;
|
|
176
|
+
outline-offset: calc(var(--space-button-inline-icon-focus-outline-gutter-vk4r2v, 0px) - 1px);
|
|
177
|
+
}
|
|
178
|
+
body[data-awsui-focus-visible=true] .awsui_expand-toggle_1ss49_1izvf_99:not(#\9):focus::before {
|
|
179
|
+
content: " ";
|
|
180
|
+
display: block;
|
|
181
|
+
position: absolute;
|
|
182
|
+
inset-inline-start: calc(-1 * var(--space-button-inline-icon-focus-outline-gutter-vk4r2v, 0px));
|
|
183
|
+
inset-block-start: calc(-1 * var(--space-button-inline-icon-focus-outline-gutter-vk4r2v, 0px));
|
|
184
|
+
inline-size: calc(100% + 2 * var(--space-button-inline-icon-focus-outline-gutter-vk4r2v, 0px));
|
|
185
|
+
block-size: calc(100% + 2 * var(--space-button-inline-icon-focus-outline-gutter-vk4r2v, 0px));
|
|
186
|
+
border-start-start-radius: var(--border-radius-control-default-focus-ring-u8zbsz, 4px);
|
|
187
|
+
border-start-end-radius: var(--border-radius-control-default-focus-ring-u8zbsz, 4px);
|
|
188
|
+
border-end-start-radius: var(--border-radius-control-default-focus-ring-u8zbsz, 4px);
|
|
189
|
+
border-end-end-radius: var(--border-radius-control-default-focus-ring-u8zbsz, 4px);
|
|
190
|
+
box-shadow: 0 0 0 2px var(--color-border-item-focused-b2ntyl, #0972d3);
|
|
191
|
+
}
|
|
192
|
+
.awsui_expand-toggle_1ss49_1izvf_99:not(#\9):hover {
|
|
193
|
+
color: var(--color-text-interactive-hover-mj8add, #000716);
|
|
194
|
+
}
|
|
195
|
+
.awsui_expand-toggle_1ss49_1izvf_99:not(#\9):active {
|
|
196
|
+
color: var(--color-text-interactive-active-ox3ozh, #000716);
|
|
197
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
|
|
2
|
+
// es-module interop with Babel and Typescript
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
module.exports.default = {
|
|
5
|
+
"expand-toggle-icon": "awsui_expand-toggle-icon_1ss49_1izvf_99",
|
|
6
|
+
"expand-toggle-icon-expanded": "awsui_expand-toggle-icon-expanded_1ss49_1izvf_120",
|
|
7
|
+
"expand-toggle": "awsui_expand-toggle_1ss49_1izvf_99"
|
|
8
|
+
};
|
|
9
|
+
|
|
@@ -24,7 +24,8 @@ interface TableHeaderCellProps<ItemType> {
|
|
|
24
24
|
focusedComponent?: null | string;
|
|
25
25
|
tableRole: TableRole;
|
|
26
26
|
resizerRoleDescription?: string;
|
|
27
|
+
isExpandable?: boolean;
|
|
27
28
|
}
|
|
28
|
-
export declare function TableHeaderCell<ItemType>({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, columnId, stickyState, cellRef, tableRole, resizerRoleDescription, }: TableHeaderCellProps<ItemType>): JSX.Element;
|
|
29
|
+
export declare function TableHeaderCell<ItemType>({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, columnId, stickyState, cellRef, tableRole, resizerRoleDescription, isExpandable, }: TableHeaderCellProps<ItemType>): JSX.Element;
|
|
29
30
|
export {};
|
|
30
31
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/table/header-cell/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAM3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,UAAU,oBAAoB,CAAC,QAAQ;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACpD,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,WAAW,CAAC;IACtB,WAAW,EAAE,kBAAkB,CAAC;IAChC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACjC,SAAS,EAAE,SAAS,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/table/header-cell/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAiB,MAAM,OAAO,CAAC;AAGtC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAM3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAI1C,UAAU,oBAAoB,CAAC,QAAQ;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,CAAC,EAAE,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACpD,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,WAAW,CAAC;IACtB,WAAW,EAAE,kBAAkB,CAAC;IAChC,OAAO,EAAE,KAAK,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACjC,SAAS,EAAE,SAAS,CAAC;IACrB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,EACxC,SAAS,EACT,KAAK,EACL,QAAQ,EACR,MAAM,EACN,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,SAAS,EACT,gBAAgB,EAChB,MAAM,EACN,OAAO,EACP,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,QAAQ,EACR,WAAW,EACX,OAAO,EACP,SAAS,EACT,sBAAsB,EACtB,YAAY,GACb,EAAE,oBAAoB,CAAC,QAAQ,CAAC,eAoGhC"}
|
|
@@ -11,7 +11,7 @@ import { useUniqueId } from '../../internal/hooks/use-unique-id';
|
|
|
11
11
|
import { useInternalI18n } from '../../i18n/context';
|
|
12
12
|
import { TableThElement } from './th-element';
|
|
13
13
|
import { useSingleTabStopNavigation } from '../../internal/context/single-tab-stop-navigation-context';
|
|
14
|
-
export function TableHeaderCell({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, columnId, stickyState, cellRef, tableRole, resizerRoleDescription, }) {
|
|
14
|
+
export function TableHeaderCell({ className, style, tabIndex, column, activeSortingColumn, sortingDescending, sortingDisabled, wrapLines, focusedComponent, hidden, onClick, colIndex, updateColumn, resizableColumns, onResizeFinish, isEditable, columnId, stickyState, cellRef, tableRole, resizerRoleDescription, isExpandable, }) {
|
|
15
15
|
var _a;
|
|
16
16
|
const i18n = useInternalI18n('table');
|
|
17
17
|
const sortable = !!column.sortingComparator || !!column.sortingField;
|
|
@@ -37,6 +37,7 @@ export function TableHeaderCell({ className, style, tabIndex, column, activeSort
|
|
|
37
37
|
return (React.createElement(TableThElement, { className: className, style: style, cellRef: cellRef, sortingStatus: sortingStatus, sortingDisabled: sortingDisabled, focusedComponent: focusedComponent, hidden: hidden, colIndex: colIndex, columnId: columnId, stickyState: stickyState, tableRole: tableRole },
|
|
38
38
|
React.createElement("div", Object.assign({ ref: clickableHeaderRef, "data-focus-id": `sorting-control-${String(columnId)}`, className: clsx(styles['header-cell-content'], {
|
|
39
39
|
[styles['header-cell-fake-focus']]: focusedComponent === `sorting-control-${String(columnId)}`,
|
|
40
|
+
[styles['header-cell-content-expandable']]: isExpandable,
|
|
40
41
|
}), "aria-label": column.ariaLabel
|
|
41
42
|
? column.ariaLabel({
|
|
42
43
|
sorted: sorted,
|
|
@@ -53,7 +54,7 @@ export function TableHeaderCell({ className, style, tabIndex, column, activeSort
|
|
|
53
54
|
: {})),
|
|
54
55
|
React.createElement("div", { className: clsx(styles['header-cell-text'], wrapLines && styles['header-cell-text-wrap']), id: headerId },
|
|
55
56
|
column.header,
|
|
56
|
-
isEditable ? (React.createElement("span", { className: styles['edit-icon'], role: "img", "aria-label": i18n('columnDefinitions.editConfig.editIconAriaLabel', (_a = column.editConfig) === null || _a === void 0 ? void 0 : _a.editIconAriaLabel) },
|
|
57
|
+
isEditable && !isExpandable ? (React.createElement("span", { className: styles['edit-icon'], role: "img", "aria-label": i18n('columnDefinitions.editConfig.editIconAriaLabel', (_a = column.editConfig) === null || _a === void 0 ? void 0 : _a.editIconAriaLabel) },
|
|
57
58
|
React.createElement(InternalIcon, { name: "edit" }))) : null),
|
|
58
59
|
sortingStatus && (React.createElement("span", { className: styles['sorting-icon'] },
|
|
59
60
|
React.createElement(InternalIcon, { name: getSortingIconName(sortingStatus) })))),
|