playbook_ui 13.20.0 → 13.21.0.pre.alpha.PBNTR225advancedtablefeedback2438
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/index.js +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/Components/CollapsibleTrail.tsx +6 -1
- data/app/pb_kits/playbook/pb_advanced_table/Components/CustomCell.tsx +21 -19
- data/app/pb_kits/playbook/pb_advanced_table/Components/SortIconButton.tsx +6 -3
- data/app/pb_kits/playbook/pb_advanced_table/Components/SubRowHeaderRow.tsx +12 -8
- data/app/pb_kits/playbook/pb_advanced_table/Components/TableHeaderCell.tsx +14 -9
- data/app/pb_kits/playbook/pb_advanced_table/Components/ToggleIconButton.tsx +9 -5
- data/app/pb_kits/playbook/pb_advanced_table/SubKits/TableBody.tsx +16 -10
- data/app/pb_kits/playbook/pb_advanced_table/SubKits/TableHeader.tsx +14 -8
- data/app/pb_kits/playbook/pb_advanced_table/Utilities/ExpansionControlHelpers.tsx +3 -2
- data/app/pb_kits/playbook/pb_advanced_table/Utilities/types.ts +0 -2
- data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +44 -6
- data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +85 -78
- data/app/pb_kits/playbook/pb_advanced_table/advanced_table.test.jsx +54 -54
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_collapsible_trail.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_default.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expanded_control.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.md +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_loading.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort_control.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_subrow_headers.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_options.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props.jsx +7 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_mock_data.js +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_mock_data_inline_loading.js +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/scss_partials/_chrome_styles.scss +13 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_alignment_swift.md +26 -6
- data/app/pb_kits/playbook/pb_date/docs/_date_default_swift.md +27 -8
- data/app/pb_kits/playbook/pb_message/docs/_description.md +1 -1
- data/app/pb_kits/playbook/pb_nav/_subtle_mixin.scss +4 -0
- data/app/pb_kits/playbook/pb_table/_table.tsx +13 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_side_highlight.jsx +24 -25
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents.jsx +47 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents.md +7 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_as_divs.html.erb +34 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_as_divs.jsx +48 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_as_divs.md +3 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_rails.html.erb +34 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_rails.md +7 -0
- data/app/pb_kits/playbook/pb_table/docs/example.yml +6 -2
- data/app/pb_kits/playbook/pb_table/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_table/styles/_striped.scss +2 -2
- data/app/pb_kits/playbook/pb_table/styles/_structure.scss +4 -2
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_body.tsx +64 -0
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_cell.tsx +66 -0
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_head.tsx +64 -0
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_header.tsx +66 -0
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +74 -0
- data/app/pb_kits/playbook/pb_table/subcomponents/index.tsx +5 -0
- data/app/pb_kits/playbook/pb_table/table.test.js +142 -1
- data/app/pb_kits/playbook/pb_table/table_body.html.erb +17 -0
- data/app/pb_kits/playbook/pb_table/table_body.rb +15 -0
- data/app/pb_kits/playbook/pb_table/table_cell.html.erb +17 -0
- data/app/pb_kits/playbook/pb_table/table_cell.rb +17 -0
- data/app/pb_kits/playbook/pb_table/table_head.html.erb +17 -0
- data/app/pb_kits/playbook/pb_table/table_head.rb +15 -0
- data/app/pb_kits/playbook/pb_table/table_header.html.erb +49 -39
- data/app/pb_kits/playbook/pb_table/table_header.rb +8 -1
- data/app/pb_kits/playbook/pb_table/table_row.html.erb +17 -7
- data/app/pb_kits/playbook/pb_table/table_row.rb +8 -1
- data/app/pb_kits/playbook/pb_text_input/_text_input.tsx +9 -5
- data/app/pb_kits/playbook/pb_text_input/docs/_text_input_add_on.jsx +20 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_presence_indicator_swift.md +30 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_props_table.md +2 -1
- data/app/pb_kits/playbook/pb_user/docs/example.yml +1 -0
- data/app/pb_kits/playbook/utilities/_positioning.scss +48 -7
- data/app/pb_kits/playbook/utilities/globalProps.ts +23 -1
- data/dist/playbook-rails.js +6 -6
- data/lib/playbook/bottom.rb +33 -0
- data/lib/playbook/classnames.rb +4 -0
- data/lib/playbook/kit_base.rb +8 -0
- data/lib/playbook/left.rb +33 -0
- data/lib/playbook/right.rb +33 -0
- data/lib/playbook/top.rb +33 -0
- data/lib/playbook/version.rb +2 -2
- metadata +32 -8
- data/app/pb_kits/playbook/pb_table/_table_row.tsx +0 -47
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f7cfb7021f51c07eb77a7166393965f50d634939c88a3d7b2a72890fc8f76aea
|
4
|
+
data.tar.gz: 4e0fd0437700056b9fcd95076dd5f700e89b616cf83f97ef9f96ae50c205352f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '09e5b5458d55ae87b2f8ccd44d3f8dc9a95391b8e8ae5493fa5f05408acfe0bd5f2db7c84343fa450bbc05299a597fc8bf6ca48d9976eeac0b1720d353b0cba7'
|
7
|
+
data.tar.gz: e360ce6a4f2074667af1b2e8a9067fd28e8e7a6f30136d04a69c7f7e3f1dcda3835d4cf4663be4e816dd89909698b4c9b0ac8991ff779b3666e845239dd5afa8
|
@@ -93,7 +93,7 @@ export { default as StarRating } from './pb_star_rating/_star_rating'
|
|
93
93
|
export { default as StatChange } from './pb_stat_change/_stat_change'
|
94
94
|
export { default as StatValue } from './pb_stat_value/_stat_value'
|
95
95
|
export { default as Table } from './pb_table/_table'
|
96
|
-
export { default as TableRow } from './pb_table/_table_row'
|
96
|
+
export { default as TableRow } from './pb_table/subcomponents/_table_row'
|
97
97
|
export { default as TextInput } from './pb_text_input/_text_input'
|
98
98
|
export { default as Textarea } from './pb_textarea/_textarea'
|
99
99
|
export { default as Time } from './pb_time/_time'
|
@@ -11,7 +11,12 @@ const CollapsibleTrail = ({ leftOffset }: { leftOffset: number }) => {
|
|
11
11
|
backgroundColor: "#E4E8F0",
|
12
12
|
}
|
13
13
|
|
14
|
-
return
|
14
|
+
return (
|
15
|
+
<div
|
16
|
+
className="collapsible-trail"
|
17
|
+
style={style}
|
18
|
+
/>
|
19
|
+
)
|
15
20
|
}
|
16
21
|
|
17
22
|
// Updated function to render multiple trails depending on depth
|
@@ -1,19 +1,21 @@
|
|
1
|
-
import React, { useContext } from "react"
|
1
|
+
import React, { useContext } from "react"
|
2
|
+
import { Getter, Row } from "@tanstack/react-table"
|
2
3
|
|
3
|
-
import
|
4
|
-
import FlexItem from "../../pb_flex/_flex_item";
|
5
|
-
import Icon from "../../pb_icon/_icon";
|
6
|
-
import { GlobalProps } from "../../utilities/globalProps";
|
4
|
+
import { GenericObject } from "../../types"
|
7
5
|
|
8
|
-
import {
|
9
|
-
|
10
|
-
import
|
6
|
+
import { GlobalProps } from "../../utilities/globalProps"
|
7
|
+
|
8
|
+
import Flex from "../../pb_flex/_flex"
|
9
|
+
import FlexItem from "../../pb_flex/_flex_item"
|
10
|
+
import Icon from "../../pb_icon/_icon"
|
11
|
+
|
12
|
+
import AdvancedTableContext from "../Context/AdvancedTableContext"
|
11
13
|
|
12
14
|
interface CustomCellProps {
|
13
|
-
getValue?: Getter<string
|
14
|
-
onRowToggleClick?: (arg: Row<
|
15
|
-
row: Row<
|
16
|
-
value?: string
|
15
|
+
getValue?: Getter<string>
|
16
|
+
onRowToggleClick?: (arg: Row<GenericObject>) => void
|
17
|
+
row: Row<GenericObject>
|
18
|
+
value?: string
|
17
19
|
}
|
18
20
|
|
19
21
|
export const CustomCell = ({
|
@@ -22,12 +24,12 @@ export const CustomCell = ({
|
|
22
24
|
row,
|
23
25
|
value,
|
24
26
|
}: CustomCellProps & GlobalProps) => {
|
25
|
-
const { setExpanded, expanded, inlineRowLoading } = useContext(AdvancedTableContext)
|
27
|
+
const { setExpanded, expanded, inlineRowLoading } = useContext(AdvancedTableContext)
|
26
28
|
|
27
|
-
const handleOnExpand = (row: Row<
|
28
|
-
onRowToggleClick && onRowToggleClick(row)
|
29
|
-
setExpanded({ ...expanded, [row.id]: !row.getIsExpanded() })
|
30
|
-
}
|
29
|
+
const handleOnExpand = (row: Row<GenericObject>) => {
|
30
|
+
onRowToggleClick && onRowToggleClick(row)
|
31
|
+
setExpanded({ ...expanded, [row.id]: !row.getIsExpanded() })
|
32
|
+
}
|
31
33
|
const RowHasChildren = row.original.children ? true : false
|
32
34
|
const renderButton = inlineRowLoading ? RowHasChildren : row.getCanExpand()
|
33
35
|
|
@@ -59,5 +61,5 @@ export const CustomCell = ({
|
|
59
61
|
</FlexItem>
|
60
62
|
</Flex>
|
61
63
|
</div>
|
62
|
-
)
|
63
|
-
}
|
64
|
+
)
|
65
|
+
}
|
@@ -1,11 +1,14 @@
|
|
1
1
|
import React from "react"
|
2
|
-
import Icon from "../../pb_icon/_icon"
|
3
2
|
import { Header } from "@tanstack/react-table"
|
4
|
-
|
3
|
+
|
4
|
+
import { GenericObject } from "../../types"
|
5
|
+
|
6
|
+
import Icon from "../../pb_icon/_icon"
|
7
|
+
|
5
8
|
import { displayIcon } from "../Utilities/IconHelpers"
|
6
9
|
|
7
10
|
type SortIconButtonProps = {
|
8
|
-
header: Header<
|
11
|
+
header: Header<GenericObject, unknown>
|
9
12
|
sortIcon?: string | string[]
|
10
13
|
}
|
11
14
|
export const SortIconButton = ({ header, sortIcon }: SortIconButtonProps) => {
|
@@ -1,23 +1,27 @@
|
|
1
1
|
import React, { useContext } from "react"
|
2
|
+
import { Row, Table } from "@tanstack/react-table"
|
3
|
+
|
4
|
+
import { GenericObject } from "../../types"
|
5
|
+
|
6
|
+
import { GlobalProps } from "../../utilities/globalProps"
|
7
|
+
|
2
8
|
import Flex from "../../pb_flex/_flex"
|
3
9
|
import Caption from "../../pb_caption/_caption"
|
4
|
-
import { Row, Table } from "@tanstack/react-table"
|
5
10
|
|
6
|
-
import AdvancedTableContext from "../Context/AdvancedTableContext";
|
7
11
|
import { ToggleIconButton } from "./ToggleIconButton"
|
8
12
|
import { renderCollapsibleTrail } from "./CollapsibleTrail"
|
9
13
|
|
10
14
|
import { isChrome } from "../Utilities/BrowserCheck"
|
11
|
-
|
12
|
-
import
|
15
|
+
|
16
|
+
import AdvancedTableContext from "../Context/AdvancedTableContext"
|
13
17
|
|
14
18
|
interface SubRowHeaderRowProps {
|
15
19
|
collapsibleTrail?: boolean
|
16
20
|
enableToggleExpansion?: "all" | "header" | "none"
|
17
|
-
onClick: (row: Row<
|
18
|
-
row: Row<
|
21
|
+
onClick: (row: Row<GenericObject>) => void
|
22
|
+
row: Row<GenericObject>
|
19
23
|
subRowHeaders?: string[]
|
20
|
-
table: Table<
|
24
|
+
table: Table<GenericObject>
|
21
25
|
}
|
22
26
|
|
23
27
|
export const SubRowHeaderRow = ({
|
@@ -28,7 +32,7 @@ export const SubRowHeaderRow = ({
|
|
28
32
|
subRowHeaders,
|
29
33
|
table,
|
30
34
|
}: SubRowHeaderRowProps & GlobalProps) => {
|
31
|
-
const { inlineRowLoading } = useContext(AdvancedTableContext)
|
35
|
+
const { inlineRowLoading } = useContext(AdvancedTableContext)
|
32
36
|
|
33
37
|
const numberOfColumns = table.getAllFlatColumns().length
|
34
38
|
const rowHasChildren = row.original.children ? true : false
|
@@ -1,20 +1,25 @@
|
|
1
1
|
import React, { useContext } from "react"
|
2
|
-
import classnames from "classnames"
|
3
|
-
import Flex from "../../pb_flex/_flex"
|
2
|
+
import classnames from "classnames"
|
4
3
|
import { flexRender, Header } from "@tanstack/react-table"
|
5
4
|
|
5
|
+
import { GenericObject } from "../../types"
|
6
|
+
|
7
|
+
import { GlobalProps } from "../../utilities/globalProps"
|
8
|
+
|
9
|
+
import Flex from "../../pb_flex/_flex"
|
10
|
+
|
6
11
|
import { SortIconButton } from "./SortIconButton"
|
7
12
|
import { ToggleIconButton } from "./ToggleIconButton"
|
13
|
+
|
8
14
|
import { isChrome } from "../Utilities/BrowserCheck"
|
9
|
-
|
15
|
+
|
10
16
|
import AdvancedTableContext from "../Context/AdvancedTableContext"
|
11
|
-
import { GlobalProps } from "../../utilities/globalProps"
|
12
17
|
|
13
18
|
type TableHeaderCellProps = {
|
14
19
|
enableSorting?: boolean
|
15
20
|
enableToggleExpansion?: "all" | "header" | "none"
|
16
21
|
handleExpandOrCollapse?: () => void
|
17
|
-
header?: Header<
|
22
|
+
header?: Header<GenericObject, unknown>
|
18
23
|
headerChildren?: React.ReactNode | React.ReactNode[]
|
19
24
|
loading?: boolean
|
20
25
|
sortIcon?: string | string[]
|
@@ -45,24 +50,24 @@ export const TableHeaderCell = ({
|
|
45
50
|
const cellClassName = classnames("table-header-cells",
|
46
51
|
`${isChrome() ? "chrome-styles" : ""}`,
|
47
52
|
`${enableSorting ? "table-header-cells-active" : ""}`
|
48
|
-
)
|
53
|
+
)
|
49
54
|
|
50
55
|
const cellId = `${loading ?
|
51
56
|
`loading-${header.id}`
|
52
57
|
: `${header.id}`
|
53
|
-
}
|
58
|
+
}`
|
54
59
|
|
55
60
|
const isToggleExpansionEnabledLoading =
|
56
61
|
header.index === 0 &&
|
57
62
|
loading &&
|
58
63
|
(enableToggleExpansion === "all" || "header") &&
|
59
|
-
enableToggleExpansion !== "none"
|
64
|
+
enableToggleExpansion !== "none"
|
60
65
|
|
61
66
|
const isToggleExpansionEnabled =
|
62
67
|
header.index === 0 &&
|
63
68
|
!loading &&
|
64
69
|
(enableToggleExpansion === "all" || "header") &&
|
65
|
-
enableToggleExpansion !== "none"
|
70
|
+
enableToggleExpansion !== "none"
|
66
71
|
|
67
72
|
return (
|
68
73
|
<th
|
@@ -1,13 +1,17 @@
|
|
1
1
|
import React, { useContext } from "react"
|
2
|
-
import Icon from "../../pb_icon/_icon"
|
3
2
|
import { Row } from "@tanstack/react-table"
|
4
|
-
|
5
|
-
import {
|
3
|
+
|
4
|
+
import { GenericObject } from "../../types"
|
5
|
+
|
6
|
+
import Icon from "../../pb_icon/_icon"
|
7
|
+
|
6
8
|
import { displayIcon } from "../Utilities/IconHelpers"
|
7
9
|
|
10
|
+
import AdvancedTableContext from "../Context/AdvancedTableContext"
|
11
|
+
|
8
12
|
interface ToggleIconButtonProps {
|
9
|
-
onClick: (row: Row<
|
10
|
-
row?: Row<
|
13
|
+
onClick: (row: Row<GenericObject>) => void
|
14
|
+
row?: Row<GenericObject>
|
11
15
|
}
|
12
16
|
|
13
17
|
export const ToggleIconButton = ({ row, onClick }: ToggleIconButtonProps) => {
|
@@ -1,27 +1,33 @@
|
|
1
1
|
import React, { useContext } from "react"
|
2
|
-
import classnames from "classnames"
|
3
|
-
import { buildCss } from "../../utilities/props";
|
4
|
-
import { globalProps } from "../../utilities/globalProps";
|
5
|
-
import LoadingInline from "../../pb_loading_inline/_loading_inline"
|
2
|
+
import classnames from "classnames"
|
6
3
|
import { flexRender, Row } from "@tanstack/react-table"
|
7
4
|
|
5
|
+
import { GenericObject } from "../../types"
|
6
|
+
|
7
|
+
import { buildCss } from "../../utilities/props"
|
8
|
+
import { globalProps } from "../../utilities/globalProps"
|
9
|
+
import { isChrome } from "../Utilities/BrowserCheck"
|
10
|
+
|
11
|
+
import LoadingInline from "../../pb_loading_inline/_loading_inline"
|
12
|
+
|
8
13
|
import { SubRowHeaderRow } from "../Components/SubRowHeaderRow"
|
9
14
|
import { LoadingCell } from "../Components/LoadingCell"
|
10
15
|
import { renderCollapsibleTrail } from "../Components/CollapsibleTrail"
|
16
|
+
|
11
17
|
import AdvancedTableContext from "../Context/AdvancedTableContext"
|
12
|
-
import { isChrome } from "../Utilities/BrowserCheck"
|
13
|
-
import { DataType } from "../Utilities/types"
|
14
18
|
|
15
19
|
type TableBodyProps = {
|
16
|
-
className?: string
|
20
|
+
className?: string
|
17
21
|
collapsibleTrail?: boolean
|
18
|
-
|
22
|
+
dark?: boolean
|
23
|
+
id?: string
|
19
24
|
subRowHeaders?: string[]
|
20
25
|
}
|
21
26
|
|
22
27
|
export const TableBody = ({
|
23
28
|
className,
|
24
29
|
collapsibleTrail = true,
|
30
|
+
dark = false,
|
25
31
|
id,
|
26
32
|
subRowHeaders,
|
27
33
|
...props
|
@@ -40,14 +46,14 @@ export const TableBody = ({
|
|
40
46
|
buildCss("pb_advanced_table_body"),
|
41
47
|
globalProps(props),
|
42
48
|
className
|
43
|
-
)
|
49
|
+
)
|
44
50
|
|
45
51
|
return (
|
46
52
|
<>
|
47
53
|
<tbody className={classes}
|
48
54
|
id={id}
|
49
55
|
>
|
50
|
-
{table.getRowModel().rows.map((row: Row<
|
56
|
+
{table.getRowModel().rows.map((row: Row<GenericObject>) => {
|
51
57
|
const isExpandable = row.getIsExpanded()
|
52
58
|
const isFirstChildofSubrow = row.depth > 0 && row.index === 0
|
53
59
|
const rowHasNoChildren = row.original.children && !row.original.children.length ? true : false
|
@@ -1,23 +1,29 @@
|
|
1
1
|
import React, { useContext } from "react"
|
2
|
-
import classnames from "classnames"
|
3
|
-
import { buildCss } from "../../utilities/props";
|
4
|
-
import { globalProps } from "../../utilities/globalProps";
|
2
|
+
import classnames from "classnames"
|
5
3
|
import { HeaderGroup } from "@tanstack/react-table"
|
6
|
-
|
4
|
+
|
5
|
+
import { GenericObject } from "../../types"
|
6
|
+
|
7
|
+
import { buildCss } from "../../utilities/props"
|
8
|
+
import { globalProps } from "../../utilities/globalProps"
|
9
|
+
|
7
10
|
import { TableHeaderCell } from "../Components/TableHeaderCell"
|
8
|
-
|
11
|
+
|
12
|
+
import AdvancedTableContext from "../Context/AdvancedTableContext"
|
9
13
|
|
10
14
|
type TableHeaderProps = {
|
11
15
|
children?: React.ReactNode | React.ReactNode[]
|
12
16
|
className?: string
|
17
|
+
dark?: boolean,
|
13
18
|
enableSorting?: boolean
|
14
|
-
id?: string
|
19
|
+
id?: string
|
15
20
|
sortIcon?: string | string[]
|
16
21
|
}
|
17
22
|
|
18
23
|
export const TableHeader = ({
|
19
24
|
children,
|
20
25
|
className,
|
26
|
+
dark = false,
|
21
27
|
enableSorting = false,
|
22
28
|
id,
|
23
29
|
sortIcon = ["arrow-up-short-wide", "arrow-down-short-wide"],
|
@@ -34,7 +40,7 @@ export const TableHeader = ({
|
|
34
40
|
buildCss("pb_advanced_table_header"),
|
35
41
|
globalProps(props),
|
36
42
|
className
|
37
|
-
)
|
43
|
+
)
|
38
44
|
|
39
45
|
|
40
46
|
return (
|
@@ -43,7 +49,7 @@ export const TableHeader = ({
|
|
43
49
|
id={id}
|
44
50
|
>
|
45
51
|
{/* Get the header groups (only one in this example) */}
|
46
|
-
{table.getHeaderGroups().map((headerGroup: HeaderGroup<
|
52
|
+
{table.getHeaderGroups().map((headerGroup: HeaderGroup<GenericObject>) => (
|
47
53
|
<tr key={`${headerGroup.id}-headerGroup`}>
|
48
54
|
{headerGroup.headers.map(header => (
|
49
55
|
<TableHeaderCell
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { RowModel } from "@tanstack/react-table"
|
2
|
-
import {
|
2
|
+
import { ExpandedStateObject } from "./types"
|
3
|
+
import { GenericObject } from "../../types"
|
3
4
|
|
4
5
|
const filterExpandableRows = (expandedState: Record<string, boolean>) => {
|
5
6
|
for (const expandedRow in expandedState) {
|
@@ -11,7 +12,7 @@ const filterExpandableRows = (expandedState: Record<string, boolean>) => {
|
|
11
12
|
}
|
12
13
|
|
13
14
|
export const updateExpandAndCollapseState = (
|
14
|
-
tableRows: RowModel<
|
15
|
+
tableRows: RowModel<GenericObject>,
|
15
16
|
expanded: Record<string, boolean>,
|
16
17
|
targetParent: string
|
17
18
|
) => {
|
@@ -4,6 +4,7 @@
|
|
4
4
|
@import "../tokens/spacing";
|
5
5
|
@import "./scss_partials/loading";
|
6
6
|
@import "./scss_partials/pseudo_states";
|
7
|
+
@import "./scss_partials/chrome_styles";
|
7
8
|
|
8
9
|
.pb_advanced_table {
|
9
10
|
$border-color: 1px solid $border_light !important;
|
@@ -86,13 +87,50 @@
|
|
86
87
|
box-shadow: 1px 0px 0px 0px #e4e8f0 !important;
|
87
88
|
}
|
88
89
|
|
89
|
-
|
90
|
-
|
91
|
-
|
90
|
+
@include chrome_styles($border-color);
|
91
|
+
|
92
|
+
&.dark {
|
93
|
+
.bg-white {
|
94
|
+
background: $bg_dark_card;
|
95
|
+
}
|
96
|
+
|
97
|
+
.bg-silver {
|
98
|
+
background: $bg_dark;
|
99
|
+
}
|
100
|
+
|
101
|
+
.table-header-cells:first-child, td:first-child {
|
102
|
+
box-shadow: 1px 0px 0px 0px $border_dark !important;
|
103
|
+
}
|
104
|
+
|
105
|
+
.collapsible-trail {
|
106
|
+
background-color: $border_dark !important;
|
107
|
+
}
|
108
|
+
|
109
|
+
.sort-button-icon, .header-sort-button > div {
|
110
|
+
color: $white !important;
|
111
|
+
}
|
112
|
+
|
113
|
+
.gray-icon {
|
114
|
+
color: $text_dk_light !important;
|
115
|
+
}
|
116
|
+
|
117
|
+
.sticky-header {
|
118
|
+
background-color: $bg_dark_card;
|
119
|
+
}
|
92
120
|
|
93
|
-
|
94
|
-
.
|
95
|
-
|
121
|
+
.loading-toggle-icon,
|
122
|
+
.loading-cell {
|
123
|
+
&::after {
|
124
|
+
background-color: $bg_dark !important;
|
125
|
+
background-image: linear-gradient(
|
126
|
+
to left,
|
127
|
+
$bg_dark 0%,
|
128
|
+
lighten($bg_dark, 1%) 50%,
|
129
|
+
lighten($bg_dark, 2%) 60%,
|
130
|
+
$bg_dark 80%,
|
131
|
+
$bg_dark 100%
|
132
|
+
) !important;
|
133
|
+
}
|
96
134
|
}
|
97
135
|
}
|
98
136
|
}
|