playbook_ui 14.18.0.pre.alpha.revert4567revert4553PLAY2056ATcolbordercolors7469 → 14.18.0.pre.rc.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.
Files changed (189) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/Components/RegularTableView.tsx +3 -23
  3. data/app/pb_kits/playbook/pb_advanced_table/Components/TableHeaderCell.tsx +3 -67
  4. data/app/pb_kits/playbook/pb_advanced_table/Hooks/useTableActions.ts +2 -1
  5. data/app/pb_kits/playbook/pb_advanced_table/Utilities/ExpansionControlHelpers.tsx +19 -29
  6. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +143 -365
  7. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +1 -14
  8. data/app/pb_kits/playbook/pb_advanced_table/advanced_table.rb +1 -6
  9. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props.html.erb +1 -1
  10. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props.jsx +2 -1
  11. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_rails.md +2 -2
  12. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_react.md +1 -1
  13. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header_rails.md +2 -6
  14. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header_react.md +2 -6
  15. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +3 -10
  16. data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +1 -6
  17. data/app/pb_kits/playbook/pb_advanced_table/index.js +0 -7
  18. data/app/pb_kits/playbook/pb_advanced_table/table_row.html.erb +1 -1
  19. data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.tsx +1 -1
  20. data/app/pb_kits/playbook/pb_circle_chart/circleChart.test.js +2 -2
  21. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_block.html.erb +2 -2
  22. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_block.jsx +1 -1
  23. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_colors.html.erb +1 -1
  24. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_colors.jsx +1 -1
  25. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_custom_tooltip.html.erb +1 -1
  26. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_custom_tooltip.jsx +1 -1
  27. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_default.html.erb +1 -1
  28. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_default.jsx +1 -1
  29. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_legend_position.html.erb +1 -1
  30. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_legend_position.jsx +1 -1
  31. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_live_data.jsx +2 -2
  32. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_rounded.html.erb +1 -1
  33. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_rounded.jsx +1 -1
  34. data/app/pb_kits/playbook/pb_circle_chart/docs/example.yml +3 -2
  35. data/app/pb_kits/playbook/pb_circle_chart/docs/index.js +1 -2
  36. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.scss +1 -39
  37. data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.tsx +0 -4
  38. data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.rb +1 -9
  39. data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.test.js +0 -14
  40. data/app/pb_kits/playbook/pb_circle_icon_button/docs/example.yml +0 -2
  41. data/app/pb_kits/playbook/pb_circle_icon_button/docs/index.js +0 -1
  42. data/app/pb_kits/playbook/pb_copy_button/_copy_button.tsx +45 -19
  43. data/app/pb_kits/playbook/pb_copy_button/docs/example.yml +0 -2
  44. data/app/pb_kits/playbook/pb_copy_button/docs/index.js +1 -2
  45. data/app/pb_kits/playbook/pb_copy_button/index.js +20 -46
  46. data/app/pb_kits/playbook/pb_date_picker/_date_picker.tsx +0 -12
  47. data/app/pb_kits/playbook/pb_date_picker/date_picker.rb +0 -12
  48. data/app/pb_kits/playbook/pb_date_picker/date_picker_helper.ts +1 -50
  49. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_error.jsx +1 -4
  50. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_rails.md +0 -4
  51. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_range_limit.md +1 -1
  52. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_quick_pick_react.md +1 -5
  53. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +0 -2
  54. data/app/pb_kits/playbook/pb_date_picker/docs/index.js +0 -1
  55. data/app/pb_kits/playbook/pb_date_picker/plugins/quickPick.tsx +0 -10
  56. data/app/pb_kits/playbook/pb_dialog/dialog.html.erb +1 -10
  57. data/app/pb_kits/playbook/pb_dialog/dialog.rb +0 -2
  58. data/app/pb_kits/playbook/pb_dialog/docs/example.yml +0 -1
  59. data/app/pb_kits/playbook/pb_dialog/index.js +14 -106
  60. data/app/pb_kits/playbook/pb_draggable/docs/example.yml +1 -3
  61. data/app/pb_kits/playbook/pb_draggable/draggable.rb +1 -9
  62. data/app/pb_kits/playbook/pb_draggable/index.js +142 -139
  63. data/app/pb_kits/playbook/pb_dropdown/_dropdown.tsx +1 -1
  64. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_error.jsx +1 -4
  65. data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownOption.tsx +1 -1
  66. data/app/pb_kits/playbook/pb_filter/docs/example.yml +0 -1
  67. data/app/pb_kits/playbook/pb_form_group/_form_group.scss +3 -23
  68. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_select.html.erb +5 -15
  69. data/app/pb_kits/playbook/pb_form_group/docs/_form_group_select.jsx +6 -39
  70. data/app/pb_kits/playbook/pb_gauge/docs/example.yml +0 -1
  71. data/app/pb_kits/playbook/pb_gauge/docs/index.js +0 -1
  72. data/app/pb_kits/playbook/pb_layout/_layout.scss +1 -70
  73. data/app/pb_kits/playbook/pb_layout/_layout.tsx +2 -29
  74. data/app/pb_kits/playbook/pb_layout/docs/_layout_bracket.jsx +118 -322
  75. data/app/pb_kits/playbook/pb_layout/docs/_layout_bracket.md +1 -1
  76. data/app/pb_kits/playbook/pb_layout/subcomponents/_game.tsx +43 -74
  77. data/app/pb_kits/playbook/pb_layout/subcomponents/_round.tsx +4 -21
  78. data/app/pb_kits/playbook/pb_line_graph/docs/example.yml +0 -1
  79. data/app/pb_kits/playbook/pb_line_graph/docs/index.js +0 -1
  80. data/app/pb_kits/playbook/pb_overlay/_overlay.scss +22 -83
  81. data/app/pb_kits/playbook/pb_overlay/_overlay.tsx +7 -39
  82. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_default.md +7 -1
  83. data/app/pb_kits/playbook/pb_overlay/docs/example.yml +0 -5
  84. data/app/pb_kits/playbook/pb_overlay/docs/index.js +0 -5
  85. data/app/pb_kits/playbook/pb_overlay/overlay.test.jsx +1 -39
  86. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.scss +0 -13
  87. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.tsx +1 -3
  88. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_validation.jsx +1 -8
  89. data/app/pb_kits/playbook/pb_phone_number_input/docs/example.yml +0 -2
  90. data/app/pb_kits/playbook/pb_phone_number_input/docs/index.js +0 -1
  91. data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.rb +0 -3
  92. data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.test.js +0 -19
  93. data/app/pb_kits/playbook/pb_popover/docs/example.yml +0 -1
  94. data/app/pb_kits/playbook/pb_popover/index.ts +1 -13
  95. data/app/pb_kits/playbook/pb_popover/popover.rb +0 -2
  96. data/app/pb_kits/playbook/pb_select/docs/_select_error.jsx +2 -7
  97. data/app/pb_kits/playbook/pb_table/_table.tsx +2 -2
  98. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows.md +1 -3
  99. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows_rails.md +1 -3
  100. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table.md +1 -3
  101. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table_rails.md +1 -3
  102. data/app/pb_kits/playbook/pb_table/styles/_collapsible.scss +1 -1
  103. data/app/pb_kits/playbook/pb_text_input/_text_input.tsx +5 -13
  104. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_error.jsx +1 -9
  105. data/app/pb_kits/playbook/pb_text_input/docs/example.yml +0 -2
  106. data/app/pb_kits/playbook/pb_text_input/docs/index.js +0 -1
  107. data/app/pb_kits/playbook/pb_text_input/inputMask.ts +1 -8
  108. data/app/pb_kits/playbook/pb_textarea/docs/_textarea_error.jsx +1 -7
  109. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_error_state.jsx +2 -6
  110. data/dist/chunks/_typeahead-C2GOKWtm.js +22 -0
  111. data/dist/chunks/_weekday_stacked-CFGTPT0O.js +45 -0
  112. data/dist/chunks/lib-BGzBzFZX.js +29 -0
  113. data/dist/chunks/{pb_form_validation-BWjy4bFn.js → pb_form_validation-BvNy9Bd6.js} +1 -1
  114. data/dist/chunks/vendor.js +1 -1
  115. data/dist/menu.yml +2 -2
  116. data/dist/playbook-doc.js +1 -19
  117. data/dist/playbook-rails-react-bindings.js +1 -1
  118. data/dist/playbook-rails.js +1 -1
  119. data/dist/playbook.css +1 -1
  120. data/lib/playbook/version.rb +2 -2
  121. metadata +8 -71
  122. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_border_color.jsx +0 -80
  123. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_border_color.md +0 -3
  124. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_border_color_rails.html.erb +0 -58
  125. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_border_color_rails.md +0 -3
  126. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expand_by_depth.jsx +0 -66
  127. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expand_by_depth.md +0 -10
  128. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_columns.jsx +0 -58
  129. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_columns.md +0 -6
  130. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_columns_and_header.jsx +0 -64
  131. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_columns_and_header.md +0 -8
  132. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_header.jsx +0 -55
  133. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_header.md +0 -3
  134. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_header_rails.html.erb +0 -33
  135. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sticky_header_rails.md +0 -3
  136. data/app/pb_kits/playbook/pb_advanced_table/scss_partials/advanced_table_sticky_mixin.scss +0 -97
  137. data/app/pb_kits/playbook/pb_circle_chart/circleChartTheme.ts +0 -53
  138. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_pb_styles.jsx +0 -38
  139. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_pb_styles.md +0 -1
  140. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_size.html.erb +0 -28
  141. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_size.jsx +0 -42
  142. data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_size.md +0 -1
  143. data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_hook.jsx +0 -54
  144. data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_hook.md +0 -3
  145. data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_hook_rails.html.erb +0 -14
  146. data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_hook_rails.md +0 -3
  147. data/app/pb_kits/playbook/pb_copy_button/usePBCopy.ts +0 -45
  148. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range_pattern.jsx +0 -34
  149. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range_pattern.md +0 -14
  150. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range_pattern_rails.html.erb +0 -20
  151. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_range_pattern_rails.md +0 -14
  152. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_turbo_frames.html.erb +0 -117
  153. data/app/pb_kits/playbook/pb_dialog/docs/_dialog_turbo_frames_rails.md +0 -9
  154. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones.html.erb +0 -43
  155. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors.html.erb +0 -55
  156. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors_rails.md +0 -1
  157. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners.html.erb +0 -42
  158. data/app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners.md +0 -1
  159. data/app/pb_kits/playbook/pb_filter/docs/_filter_within_turbo_frames.html.erb +0 -41
  160. data/app/pb_kits/playbook/pb_filter/docs/_filter_within_turbo_frames.md +0 -1
  161. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_pb_styles.jsx +0 -30
  162. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_pb_styles.md +0 -1
  163. data/app/pb_kits/playbook/pb_gauge/gaugeTheme.ts +0 -85
  164. data/app/pb_kits/playbook/pb_layout/subcomponents/_participant.tsx +0 -79
  165. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_pb_styles.jsx +0 -52
  166. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_pb_styles.md +0 -1
  167. data/app/pb_kits/playbook/pb_line_graph/lineGraphTheme.ts +0 -110
  168. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_color.jsx +0 -63
  169. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_color.md +0 -3
  170. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_fullscreen_background.jsx +0 -49
  171. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_fullscreen_background.md +0 -1
  172. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_fullscreen_opacity.jsx +0 -81
  173. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_fullscreen_opacity.md +0 -1
  174. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_gradient_opacity.jsx +0 -39
  175. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_gradient_opacity.md +0 -1
  176. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_layout.jsx +0 -40
  177. data/app/pb_kits/playbook/pb_overlay/docs/_overlay_layout.md +0 -5
  178. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_country_search.html.erb +0 -10
  179. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_country_search.jsx +0 -20
  180. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_country_search.md +0 -1
  181. data/app/pb_kits/playbook/pb_popover/docs/_popover_append_to.html.erb +0 -46
  182. data/app/pb_kits/playbook/pb_popover/docs/_popover_append_to.md +0 -1
  183. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_sanitize.jsx +0 -94
  184. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_sanitize.md +0 -1
  185. data/dist/chunks/_typeahead-D8CsVBZO.js +0 -22
  186. data/dist/chunks/_weekday_stacked-D3oLTSkH.js +0 -45
  187. data/dist/chunks/lib-BmTAc7Nc.js +0 -29
  188. /data/app/pb_kits/playbook/pb_draggable/docs/{_draggable_drop_zones_react.md → _draggable_drop_zones.md} +0 -0
  189. /data/app/pb_kits/playbook/pb_draggable/docs/{_draggable_drop_zones_colors_react.md → _draggable_drop_zones_colors.md} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6bbfa2629209297ecc32adbb7e4fae0ebb1078e24a1ed2bbb91ef902e4d54633
4
- data.tar.gz: 0d7a64e3d789cf0c9b2570743fbbedf2654cf0ebfc3e6bb6617604fcc239591e
3
+ metadata.gz: 7f3de47141a421d9d9d54ab4699505a03bdc2ba36fce5d87d2bd3bc007526e7d
4
+ data.tar.gz: ffb8e34afbabf026e6a10a8a3ab7981237015d8ba57945df855316d3b93f2ed4
5
5
  SHA512:
6
- metadata.gz: 0b0508316833ff5d8b933071c26531941539325fbd9f068b49242b06a3c2049194655e3465ad4bc8f91b9ab7ee59a2cf7c0d66a4420b298d273bd05f43d7d5f2
7
- data.tar.gz: '09a117e1055ff3f3cc1c3d1f11c14a46292a54377f1961f0e7d91094dcfe66bb5d37544d0b4752c654663f303605e01867ab5c302d2beee8135b014ca8e11307'
6
+ metadata.gz: b42981d33ab74bac828aef053f460a9ce9b108b21955f311e9050d1a3e0a7bc06629de944bd11c4cb4d677612a905c32d9faf199eb7614e74534060a75cac1bb
7
+ data.tar.gz: '09b073481994a722f3330d2f8a581fd9426e9f36ec394e5456db05274313189db59ef9d364b9bbb648846b67f1cc5a3f38912ca7730c680a22bd35c6e1c3c7b7'
@@ -1,4 +1,4 @@
1
- import React, { useContext, useEffect } from "react"
1
+ import React, { useContext } from "react"
2
2
  import classnames from "classnames"
3
3
  import { flexRender, Row, Cell } from "@tanstack/react-table"
4
4
 
@@ -32,21 +32,9 @@ export const RegularTableView = ({
32
32
  table,
33
33
  selectableRows,
34
34
  hasAnySubRows,
35
- stickyLeftColumn
35
+ isPinnedLeft = false,
36
36
  } = useContext(AdvancedTableContext)
37
37
 
38
-
39
- useEffect(() => {
40
- if (stickyLeftColumn && Array.isArray(stickyLeftColumn)) {
41
- stickyLeftColumn.forEach((columnId) => {
42
- const column = table.getColumn(columnId);
43
- if (column && column.getCanPin()) {
44
- column.pin('left');
45
- }
46
- });
47
- }
48
- },[stickyLeftColumn, table]);
49
-
50
38
  const columnPinning = table.getState().columnPinning || { left: [] };
51
39
  const columnDefinitions = table.options.meta?.columnDefinitions || [];
52
40
 
@@ -94,7 +82,7 @@ export const RegularTableView = ({
94
82
  {row.getVisibleCells().map((cell: Cell<GenericObject, unknown>, i: number) => {
95
83
  const isPinnedLeft = columnPinning.left.includes(cell.column.id);
96
84
  const isLastCell = cell.column.parent?.columns?.at(-1)?.id === cell.column.id;
97
- const { column } = cell;
85
+
98
86
  return (
99
87
  <td
100
88
  align="right"
@@ -102,17 +90,9 @@ export const RegularTableView = ({
102
90
  `${cell.id}-cell position_relative`,
103
91
  isChrome() ? "chrome-styles" : "",
104
92
  isPinnedLeft && 'pinned-left',
105
- stickyLeftColumn && stickyLeftColumn.length > 0 && isPinnedLeft && 'sticky-left',
106
93
  isLastCell && 'last-cell',
107
94
  )}
108
95
  key={`${cell.id}-data`}
109
- style={{
110
- left: isPinnedLeft
111
- ? i === 1 //Accounting for set min-width for first column
112
- ? '180px'
113
- : `${column.getStart("left")}px`
114
- : undefined,
115
- }}
116
96
  >
117
97
  {collapsibleTrail && i === 0 && row.depth > 0 && renderCollapsibleTrail(row.depth)}
118
98
  <span id={`${cell.id}-span`}>
@@ -1,6 +1,6 @@
1
1
  import React, { useContext } from "react"
2
2
  import classnames from "classnames"
3
- import { flexRender, Header, Table, RowModel } from "@tanstack/react-table"
3
+ import { flexRender, Header, Table } from "@tanstack/react-table"
4
4
 
5
5
  import { GenericObject } from "../../types"
6
6
 
@@ -8,16 +8,9 @@ import { GlobalProps } from "../../utilities/globalProps"
8
8
 
9
9
  import Flex from "../../pb_flex/_flex"
10
10
  import Checkbox from "../../pb_checkbox/_checkbox"
11
- import Dropdown from "../../pb_dropdown/_dropdown"
12
- import DropdownTrigger from "../../pb_dropdown/subcomponents/DropdownTrigger"
13
- import DropdownOption from "../../pb_dropdown/subcomponents/DropdownOption"
14
- import DropdownContainer from "../../pb_dropdown/subcomponents/DropdownContainer"
15
- import Icon from "../../pb_icon/_icon"
16
11
 
17
12
  import { SortIconButton } from "./SortIconButton"
18
13
  import { ToggleIconButton } from "./ToggleIconButton"
19
- import { displayIcon } from "../Utilities/IconHelpers"
20
- import { updateExpandAndCollapseState } from "../Utilities/ExpansionControlHelpers"
21
14
 
22
15
  import { isChrome } from "../Utilities/BrowserCheck"
23
16
 
@@ -47,17 +40,11 @@ export const TableHeaderCell = ({
47
40
  table
48
41
  }: TableHeaderCellProps) => {
49
42
  const {
50
- expanded,
51
- setExpanded,
52
- expandByDepth,
53
- onExpandByDepthClick,
54
- toggleExpansionIcon,
55
43
  sortControl,
56
44
  responsive,
57
45
  selectableRows,
58
46
  hasAnySubRows,
59
47
  showActionsBar,
60
- stickyLeftColumn,
61
48
  inlineRowLoading,
62
49
  isActionBarVisible,
63
50
  } = useContext(AdvancedTableContext);
@@ -89,9 +76,7 @@ const cellClassName = classnames(
89
76
  `${isChrome() ? "chrome-styles" : ""}`,
90
77
  `${enableSorting ? "table-header-cells-active" : ""}`,
91
78
  { "pinned-left": responsive === "scroll" && isPinnedLeft },
92
- isLastHeaderCell ? "last-header-cell" : "",
93
- stickyLeftColumn && stickyLeftColumn.length > 0 && isPinnedLeft ? 'sticky-left' : "",
94
-
79
+ isLastHeaderCell ? "last-header-cell" : ""
95
80
  );
96
81
 
97
82
  const cellId = `${loading ?
@@ -119,21 +104,6 @@ const isToggleExpansionEnabled =
119
104
  justifyHeader = isLeafColumn ? "end" : "center";
120
105
  }
121
106
 
122
- const handleExpandDepth = (depth: number) => {
123
- if (onExpandByDepthClick) {
124
- const flatRows = table?.getRowModel().flatRows
125
- onExpandByDepthClick(depth, flatRows)
126
- }
127
- const updated = updateExpandAndCollapseState(
128
- table.getRowModel(),
129
- expanded,
130
- undefined,
131
- depth
132
- )
133
- setExpanded(updated)
134
- }
135
-
136
-
137
107
  return (
138
108
  <th
139
109
  align="right"
@@ -141,13 +111,6 @@ const isToggleExpansionEnabled =
141
111
  colSpan={header?.colSpan}
142
112
  id={cellId}
143
113
  key={`${header?.id}-header`}
144
- style={{
145
- left: isPinnedLeft
146
- ? header?.index === 1 //Accounting for set min-width for first column
147
- ? '180px'
148
- : `${header?.column.getStart("left")}px`
149
- : undefined,
150
- }}
151
114
  >
152
115
  {header?.isPlaceholder ? null : headerChildren && header?.index === 0 ? (
153
116
  <Flex alignItems="center">
@@ -170,36 +133,9 @@ const isToggleExpansionEnabled =
170
133
  />
171
134
  )
172
135
  }
173
- {isToggleExpansionEnabled && hasAnySubRows && !expandByDepth && (
136
+ {isToggleExpansionEnabled && hasAnySubRows && (
174
137
  <ToggleIconButton onClick={handleExpandOrCollapse} />
175
138
  )}
176
- {isToggleExpansionEnabled && hasAnySubRows && expandByDepth && (
177
- <Dropdown className="expand-by-depth-dropdown-wrapper"
178
- options={expandByDepth}
179
- >
180
- <DropdownTrigger className="gray-icon toggle-all-icon">
181
- <Icon icon={displayIcon(toggleExpansionIcon)[0]} />
182
- </DropdownTrigger>
183
- <DropdownContainer className="expand-by-depth-dropdown">
184
- {expandByDepth.map((option:{ [key: string]: any }, index: number) => (
185
- <DropdownOption
186
- key={index}
187
- option={option}
188
- padding="none"
189
- >
190
- <Flex
191
- alignItems="center"
192
- htmlOptions={{onClick: () => {handleExpandDepth(option.depth)} }}
193
- paddingX="sm"
194
- paddingY="xs"
195
- >
196
- {option.label}
197
- </Flex>
198
- </DropdownOption>
199
- ))}
200
- </DropdownContainer>
201
- </Dropdown>
202
- )}
203
139
 
204
140
  {isToggleExpansionEnabledLoading &&(
205
141
  <div className="loading-toggle-icon header-toggle-icon" />
@@ -22,9 +22,10 @@ export function useTableActions({
22
22
  // Handle expand/collapse
23
23
  const handleExpandOrCollapse = useCallback(async (row: Row<GenericObject>) => {
24
24
  onToggleExpansionClick && onToggleExpansionClick(row);
25
+
25
26
  const expandedState = expanded;
26
27
  const targetParent = row?.parentId;
27
- const updatedRows = await updateExpandAndCollapseState(table.getRowModel(), expandedState, targetParent, undefined);
28
+ const updatedRows = await updateExpandAndCollapseState(table.getRowModel(), expandedState, targetParent);
28
29
  setExpanded(updatedRows);
29
30
  }, [expanded, setExpanded, onToggleExpansionClick, table]);
30
31
 
@@ -1,4 +1,4 @@
1
- import { RowModel, Row } from "@tanstack/react-table"
1
+ import { RowModel } from "@tanstack/react-table"
2
2
  import { ExpandedStateObject } from "./types"
3
3
  import { GenericObject } from "../../types"
4
4
 
@@ -14,40 +14,30 @@ const filterExpandableRows = (expandedState: Record<string, boolean>) => {
14
14
  export const updateExpandAndCollapseState = (
15
15
  tableRows: RowModel<GenericObject>,
16
16
  expanded: Record<string, boolean>,
17
- targetParent?: string,
18
- targetDepth?: number,
17
+ targetParent: string
19
18
  ) => {
20
19
  const updateExpandedRows: Record<string, boolean> = {};
21
- const rows = targetDepth !== undefined ? tableRows.flatRows : tableRows.rows;
20
+ const rows = tableRows.rows;
22
21
 
23
- const rowsToToggle: Row<GenericObject>[] = [];
22
+ let isExpansionConsistent = true;
23
+ const areRowsExpanded = new Set<boolean>();
24
24
 
25
25
  for (const row of rows) {
26
- const shouldBeUpdated =
27
- targetDepth !== undefined
28
- ? row.depth <= targetDepth
29
- : targetParent === undefined
30
- ? row.depth === 0
31
- : targetParent === row.parentId;
32
-
26
+ const shouldBeUpdated = targetParent === undefined ? row.depth === 0 : targetParent === row.parentId;
27
+
33
28
  if (shouldBeUpdated) {
34
- rowsToToggle.push(row);
35
- }
36
- }
37
-
38
- // Check if we are expanding or collapsing
39
- const anyCollapsed = rowsToToggle.some((row) => !row.getIsExpanded());
40
- const isExpandAction = anyCollapsed;
41
-
42
-
43
- for (const row of rowsToToggle) {
44
- const shouldUpdate =
45
- isExpandAction || targetDepth === undefined
46
- ? true
47
- : row.depth === targetDepth;
48
-
49
- if (shouldUpdate) {
50
- updateExpandedRows[row.id] = isExpandAction;
29
+ const isExpanded = row.getIsExpanded();
30
+ areRowsExpanded.add(isExpanded);
31
+
32
+ updateExpandedRows[row.id] = !isExpansionConsistent ? true : !isExpanded;
33
+
34
+ if (areRowsExpanded.size > 1) {
35
+ isExpansionConsistent = false;
36
+ // If expansion inconsistent, ensure all target rows are set to expand
37
+ for (const key in updateExpandedRows) {
38
+ updateExpandedRows[key] = true;
39
+ }
40
+ }
51
41
  }
52
42
  }
53
43