playbook_ui 14.23.0.pre.alpha.highchartstest9121 → 14.23.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 (142) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/Components/SubRowHeaderRow.tsx +11 -32
  3. data/app/pb_kits/playbook/pb_advanced_table/Hooks/useTableState.ts +2 -2
  4. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +0 -5
  5. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +0 -6
  6. data/app/pb_kits/playbook/pb_advanced_table/advanced_table.html.erb +1 -1
  7. data/app/pb_kits/playbook/pb_advanced_table/advanced_table.rb +0 -2
  8. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +6 -11
  9. data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +0 -2
  10. data/app/pb_kits/playbook/pb_advanced_table/table_body.rb +1 -3
  11. data/app/pb_kits/playbook/pb_advanced_table/table_header.html.erb +1 -5
  12. data/app/pb_kits/playbook/pb_advanced_table/table_header.rb +0 -36
  13. data/app/pb_kits/playbook/pb_advanced_table/table_row.html.erb +2 -11
  14. data/app/pb_kits/playbook/pb_advanced_table/table_row.rb +0 -2
  15. data/app/pb_kits/playbook/pb_badge/_badge.scss +6 -5
  16. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_colors.jsx +15 -33
  17. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom.jsx +72 -0
  18. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom.md +6 -0
  19. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_default.jsx +15 -33
  20. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_height.jsx +22 -52
  21. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_horizontal.jsx +16 -12
  22. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend.jsx +15 -31
  23. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_non_clickable.jsx +16 -39
  24. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_position.jsx +38 -86
  25. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_position.md +1 -1
  26. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_negative_numbers.jsx +15 -32
  27. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_pb_styles.jsx +64 -0
  28. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_pb_styles.md +1 -0
  29. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_secondary_y_axis.jsx +22 -72
  30. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_secondary_y_axis.md +1 -1
  31. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_spline.jsx +15 -31
  32. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_stacked.jsx +16 -37
  33. data/app/pb_kits/playbook/pb_bar_graph/docs/_description.md +3 -1
  34. data/app/pb_kits/playbook/pb_bar_graph/docs/example.yml +3 -1
  35. data/app/pb_kits/playbook/pb_bar_graph/docs/index.js +2 -0
  36. data/app/pb_kits/playbook/pb_body/docs/_body_truncate.jsx +3 -3
  37. data/app/pb_kits/playbook/pb_circle_chart/circleChartTheme.ts +1 -36
  38. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_block.jsx +26 -71
  39. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_colors.jsx +16 -29
  40. data/app/pb_kits/playbook/pb_circle_chart/docs/{_circle_chart_colors_rails.md → _circle_chart_colors.md} +1 -1
  41. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_custom_tooltip.jsx +16 -28
  42. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_custom_tooltip.md +2 -4
  43. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_default.jsx +15 -23
  44. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_inner_sizes.jsx +51 -81
  45. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_legend_position.jsx +75 -103
  46. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_legend_position.md +7 -4
  47. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_live_data.jsx +13 -19
  48. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_pb_styles.jsx +38 -0
  49. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_pb_styles.md +1 -0
  50. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_rounded.jsx +17 -30
  51. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_with_labels.jsx +20 -34
  52. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_with_legend_kit.jsx +20 -29
  53. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_with_title.jsx +20 -28
  54. data/app/pb_kits/playbook/pb_circle_chart/docs/example.yml +1 -0
  55. data/app/pb_kits/playbook/pb_circle_chart/docs/index.js +1 -0
  56. data/app/pb_kits/playbook/pb_draggable/context/index.tsx +4 -12
  57. data/app/pb_kits/playbook/pb_draggable/context/types.ts +2 -5
  58. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_colors.jsx +15 -32
  59. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_complex.jsx +9 -35
  60. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.jsx +14 -26
  61. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.jsx +15 -32
  62. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.jsx +17 -45
  63. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.jsx +22 -59
  64. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_live_data.jsx +9 -40
  65. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.jsx +18 -50
  66. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_pb_styles.jsx +30 -0
  67. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_pb_styles.md +1 -0
  68. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.jsx +18 -31
  69. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.jsx +17 -34
  70. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.jsx +23 -64
  71. data/app/pb_kits/playbook/pb_gauge/docs/example.yml +1 -0
  72. data/app/pb_kits/playbook/pb_gauge/docs/index.js +1 -0
  73. data/app/pb_kits/playbook/pb_gauge/gaugeTheme.ts +1 -7
  74. data/app/pb_kits/playbook/pb_line_graph/docs/_description.md +3 -1
  75. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_colors.jsx +17 -36
  76. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_default.jsx +16 -31
  77. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_height.jsx +31 -63
  78. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend.jsx +16 -35
  79. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_nonclickable.jsx +16 -41
  80. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_position.jsx +62 -107
  81. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_position.md +7 -4
  82. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_pb_styles.jsx +52 -0
  83. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_pb_styles.md +1 -0
  84. data/app/pb_kits/playbook/pb_line_graph/docs/example.yml +1 -0
  85. data/app/pb_kits/playbook/pb_line_graph/docs/index.js +1 -0
  86. data/app/pb_kits/playbook/pb_line_graph/lineGraphTheme.ts +1 -16
  87. data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.tsx +17 -30
  88. data/app/pb_kits/playbook/pb_phone_number_input/docs/example.yml +0 -2
  89. data/app/pb_kits/playbook/pb_phone_number_input/docs/index.js +0 -1
  90. data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.rb +0 -3
  91. data/app/pb_kits/playbook/pb_title/docs/_title_truncate.jsx +3 -3
  92. data/app/pb_kits/playbook/pb_tooltip/docs/example.yml +0 -1
  93. data/app/pb_kits/playbook/pb_tooltip/index.js +36 -59
  94. data/app/pb_kits/playbook/pb_tooltip/tooltip.rb +2 -9
  95. data/dist/chunks/_typeahead-B7FRYVtS.js +22 -0
  96. data/dist/chunks/_weekday_stacked-BNSy7Mo2.js +45 -0
  97. data/dist/chunks/lib-Carqm8Ip.js +29 -0
  98. data/dist/chunks/{pb_form_validation-kl-4Jv4t.js → pb_form_validation-DqRmTS8m.js} +1 -1
  99. data/dist/chunks/vendor.js +1 -1
  100. data/dist/menu.yml +8 -68
  101. data/dist/playbook-doc.js +2 -2
  102. data/dist/playbook-rails-react-bindings.js +1 -1
  103. data/dist/playbook-rails.js +1 -1
  104. data/dist/playbook.css +1 -1
  105. data/lib/playbook/version.rb +2 -2
  106. metadata +24 -40
  107. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_custom_sort.jsx +0 -65
  108. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_custom_sort.md +0 -5
  109. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_row_styling.html.erb +0 -46
  110. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_row_styling_rails.md +0 -7
  111. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_with_custom_header.jsx +0 -69
  112. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_with_custom_header.md +0 -1
  113. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_with_custom_header_rails.html.erb +0 -51
  114. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_with_custom_header_rails.md +0 -1
  115. data/app/pb_kits/playbook/pb_bar_graph/barGraphTheme.ts +0 -106
  116. data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_height.md +0 -3
  117. data/app/pb_kits/playbook/pb_body/docs/_body_truncate_react.md +0 -4
  118. data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_colors_react.md +0 -2
  119. data/app/pb_kits/playbook/pb_circle_chart/docs/_description.md +0 -1
  120. data/app/pb_kits/playbook/pb_gauge/docs/_description.md +0 -1
  121. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_colors_react.md +0 -2
  122. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_complex_react.md +0 -1
  123. data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units_react.md +0 -1
  124. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_colors_react.md +0 -3
  125. data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_height.md +0 -3
  126. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_strict_mode.html.erb +0 -10
  127. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_strict_mode.jsx +0 -26
  128. data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_strict_mode.md +0 -3
  129. data/app/pb_kits/playbook/pb_title/docs/_title_truncate_react.md +0 -4
  130. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_click_open.html.erb +0 -14
  131. data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_click_open_rails.md +0 -1
  132. data/dist/chunks/_line_graph-BfCo79KE.js +0 -1
  133. data/dist/chunks/_typeahead-Db4YQA5c.js +0 -6
  134. data/dist/chunks/_weekday_stacked-DhFTG-Jt.js +0 -61
  135. data/dist/chunks/lib-DnQyMxO1.js +0 -29
  136. /data/app/pb_kits/playbook/pb_advanced_table/docs/{_advanced_table_row_styling_react.md → _advanced_table_row_styling.md} +0 -0
  137. /data/app/pb_kits/playbook/pb_body/docs/{_body_truncate_rails.md → _body_truncate.md} +0 -0
  138. /data/app/pb_kits/playbook/pb_gauge/docs/{_gauge_colors_rails.md → _gauge_colors.md} +0 -0
  139. /data/app/pb_kits/playbook/pb_gauge/docs/{_gauge_complex_rails.md → _gauge_complex.md} +0 -0
  140. /data/app/pb_kits/playbook/pb_line_graph/docs/{_line_graph_colors_rails.md → _line_graph_colors.md} +0 -0
  141. /data/app/pb_kits/playbook/pb_title/docs/{_title_truncate_rails.md → _title_truncate.md} +0 -0
  142. /data/app/pb_kits/playbook/pb_tooltip/docs/{_tooltip_click_open_react.md → _tooltip_click_open.md} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a7a7f0bebc0a902474f2145026f6cc14022a9964afd87118110013be409ff668
4
- data.tar.gz: 6d30c3014a51ec5c0bdb640b4745d4ddde5880fb63a17f6f24208da5c507a452
3
+ metadata.gz: 06a5151f2506f00ce8b3b6fde205e30e2ce7c3757880be36f71771df2ed45de7
4
+ data.tar.gz: 3978b2a37843efd4325d39a02e868534252a1c5e5c255b10210525724d1d38bd
5
5
  SHA512:
6
- metadata.gz: f2ab2209a98865e7afc0d325fe9764056e07fd07f20673324710dbe731c4f7c6dfe25e5097f1279823fdbc60cfca2f5c6589dc14f52361f20758816000fbb9ef
7
- data.tar.gz: c694b6b7ffc4cecb358e5fb4a3517d84c80560682205911d93fda19bee902a9439305be7b8a5923c9608ca68feb0d3071ef0b2e5874d9f774bddd12eb6f9d9f9
6
+ metadata.gz: c20beee96d95e76212aab4bea50bfd3d7cd9a4544eca713b17873362ada80a8076a02180b8dc90f8593ab9e639d3c04bc7db81259da34d09ac48919440e1e3ae
7
+ data.tar.gz: bc7fd4e83d537f8a162039cd3f2c748d3463cc7698099ef44b5d1c41713f378ab5b481000ec2aa5751f5d3fb7adaaffb34fce379bb11b726dca30086f85b9dec
@@ -7,7 +7,6 @@ import { GlobalProps } from "../../utilities/globalProps"
7
7
 
8
8
  import Flex from "../../pb_flex/_flex"
9
9
  import Caption from "../../pb_caption/_caption"
10
- import Icon from "../../pb_icon/_icon"
11
10
 
12
11
  import { ToggleIconButton } from "./ToggleIconButton"
13
12
  import { renderCollapsibleTrail } from "./CollapsibleTrail"
@@ -33,19 +32,17 @@ export const SubRowHeaderRow = ({
33
32
  subRowHeaders,
34
33
  table,
35
34
  }: SubRowHeaderRowProps & GlobalProps) => {
36
- const { inlineRowLoading, customSort, onCustomSortClick } = useContext(AdvancedTableContext)
35
+ const { inlineRowLoading } = useContext(AdvancedTableContext)
37
36
 
38
37
  const numberOfColumns = table.getAllFlatColumns().length
39
38
  const rowHasChildren = row.original.children ? true : false
40
39
  const canExpand = inlineRowLoading ? rowHasChildren : row.getCanExpand()
41
- const hasSubrowsToSort = row.getParentRow()?.subRows
42
-
43
40
 
44
41
  return (
45
42
  <tr className="custom-row bg-silver">
46
43
  <td
47
44
  className={`custom-row-first-column ${
48
- isChrome() ? "chrome-styles" : ""
45
+ isChrome() ? "chrome-styles" : ""
49
46
  }`}
50
47
  colSpan={1}
51
48
  >
@@ -53,39 +50,21 @@ export const SubRowHeaderRow = ({
53
50
  <div style={{ paddingLeft: `${row.depth * 1.25}em` }}>
54
51
  <Flex align="center"
55
52
  columnGap="xs"
56
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
57
- //@ts-ignore
58
- justifyContent={customSort && hasSubrowsToSort && hasSubrowsToSort.length > 1 ? "between" : undefined}
59
53
  >
60
- <Flex columnGap="xs">
61
- {enableToggleExpansion === "all" && canExpand ? (
62
- <ToggleIconButton onClick={onClick}
63
- row={row}
64
- />
65
- ) : null}
66
- <Caption
67
- marginLeft={canExpand ? "none" : "xs"}
68
- text={subRowHeaders[row.depth - 1]}
54
+ {enableToggleExpansion === "all" && canExpand ? (
55
+ <ToggleIconButton onClick={onClick}
56
+ row={row}
69
57
  />
70
- </Flex>
71
- {customSort && hasSubrowsToSort && hasSubrowsToSort.length > 1 && (
72
- <button
73
- aria-label="Sort this group"
74
- className="sort-button-icon gray-icon"
75
- onClick={() => { onCustomSortClick && onCustomSortClick(row.getParentRow()?.subRows)}}
76
- >
77
- <Icon
78
- cursor="pointer"
79
- fixedWidth
80
- icon="sort"
81
- />
82
- </button>
83
- )}
58
+ ) : null}
59
+ <Caption
60
+ marginLeft={canExpand ? "none" : "xs"}
61
+ text={subRowHeaders[row.depth - 1]}
62
+ />
84
63
  </Flex>
85
64
  </div>
86
65
  </td>
87
66
 
88
67
  <td colSpan={numberOfColumns - 1} />
89
68
  </tr>
90
- );
69
+ )
91
70
  }
@@ -87,7 +87,7 @@ export function useTableState({
87
87
  // Handle grouped columns
88
88
  if (column.columns && column.columns.length > 0) {
89
89
  return {
90
- header: column.header || column.label || "",
90
+ header: column.label || "",
91
91
  columns: buildColumns(column.columns, false),
92
92
  };
93
93
  }
@@ -95,7 +95,7 @@ export function useTableState({
95
95
  // Define the base column structure
96
96
  const columnStructure = {
97
97
  ...columnHelper.accessor(column.accessor, {
98
- header: column.header ?? column.label ?? "",
98
+ header: column.label || "",
99
99
  }),
100
100
  };
101
101
 
@@ -189,11 +189,6 @@
189
189
  box-sizing: border-box !important;
190
190
  }
191
191
  }
192
- // Fixes for tooltip picking up th styling from Table kit
193
- .pb_tooltip_kit {
194
- font-weight: unset;
195
- text-transform: unset;
196
- }
197
192
  }
198
193
 
199
194
  .pb_advanced_table_body {
@@ -36,7 +36,6 @@ type AdvancedTableProps = {
36
36
  columnDefinitions: GenericObject[]
37
37
  columnGroupBorderColor?: "text_lt_default" | "text_lt_light" | "text_lt_lighter" | "text_dk_default" | "text_dk_light" | "text_dk_lighter"
38
38
  columnVisibilityControl?: GenericObject
39
- customSort?:boolean;
40
39
  dark?: boolean
41
40
  data?: { [key: string]: string }
42
41
  enableToggleExpansion?: "all" | "header" | "none"
@@ -68,7 +67,6 @@ type AdvancedTableProps = {
68
67
  tableProps?: GenericObject
69
68
  toggleExpansionIcon?: string | string[]
70
69
  onRowSelectionChange?: (arg: RowSelectionState) => void
71
- onCustomSortClick?: (arg: GenericObject[]) => void
72
70
  virtualizedRows?: boolean
73
71
  allowFullScreen?: boolean
74
72
  fullScreenControl?: (controls: FullscreenControls) => void
@@ -83,7 +81,6 @@ const AdvancedTable = (props: AdvancedTableProps) => {
83
81
  columnDefinitions,
84
82
  columnGroupBorderColor,
85
83
  columnVisibilityControl,
86
- customSort,
87
84
  dark = false,
88
85
  data = {},
89
86
  enableToggleExpansion = "header",
@@ -98,7 +95,6 @@ const AdvancedTable = (props: AdvancedTableProps) => {
98
95
  maxHeight,
99
96
  onRowToggleClick,
100
97
  onToggleExpansionClick,
101
- onCustomSortClick,
102
98
  pagination = false,
103
99
  paginationProps,
104
100
  pinnedRows,
@@ -329,7 +325,6 @@ const AdvancedTable = (props: AdvancedTableProps) => {
329
325
  columnDefinitions={columnDefinitions}
330
326
  columnGroupBorderColor={columnGroupBorderColor}
331
327
  columnVisibilityControl={columnVisibilityControl}
332
- customSort={customSort}
333
328
  enableToggleExpansion={enableToggleExpansion}
334
329
  enableVirtualization={virtualizedRows}
335
330
  expandByDepth={expandByDepth}
@@ -341,7 +336,6 @@ const AdvancedTable = (props: AdvancedTableProps) => {
341
336
  isActionBarVisible={isActionBarVisible}
342
337
  isFullscreen={isFullscreen}
343
338
  loading={loading}
344
- onCustomSortClick={onCustomSortClick}
345
339
  onExpandByDepthClick={onExpandByDepthClick}
346
340
  pinnedRows={pinnedRows}
347
341
  responsive={responsive}
@@ -12,7 +12,7 @@
12
12
  <% content.presence %>
13
13
  <% else %>
14
14
  <%= pb_rails("advanced_table/table_header", props: { column_definitions: object.column_definitions, enable_toggle_expansion: object.enable_toggle_expansion, responsive: object.responsive, loading: object.loading, selectable_rows: object.selectable_rows, show_actions_bar: object.show_actions_bar }) %>
15
- <%= pb_rails("advanced_table/table_body", props: { id: object.id, table_data: object.table_data, column_definitions: object.column_definitions, responsive: object.responsive, loading: object.loading, selectable_rows: object.selectable_rows, enable_toggle_expansion: object.enable_toggle_expansion, row_styling: object.row_styling }) %>
15
+ <%= pb_rails("advanced_table/table_body", props: { id: object.id, table_data: object.table_data, column_definitions: object.column_definitions, responsive: object.responsive, loading: object.loading, selectable_rows: object.selectable_rows, enable_toggle_expansion: object.enable_toggle_expansion }) %>
16
16
  <% end %>
17
17
  <% end %>
18
18
  <% end %>
@@ -31,8 +31,6 @@ module Playbook
31
31
  default: []
32
32
  prop :scroll_bar_none, type: Playbook::Props::Boolean,
33
33
  default: false
34
- prop :row_styling, type: Playbook::Props::Array,
35
- default: []
36
34
 
37
35
  def classname
38
36
  additional_classes = [responsive_classname, max_height_classname, hide_scroll_bar_class]
@@ -10,26 +10,23 @@ examples:
10
10
  - advanced_table_beta_sort: Enable Sorting
11
11
  - advanced_table_responsive: Responsive Tables
12
12
  - advanced_table_custom_cell_rails: Custom Components for Cells
13
- - advanced_table_with_custom_header_rails: Custom Header Cell
14
13
  - advanced_table_column_headers: Multi-Header Columns
15
14
  - advanced_table_column_headers_multiple: Multi-Header Columns (Multiple Levels)
15
+ - advanced_table_column_border_color_rails: Column Group Border Color
16
16
  - advanced_table_no_subrows: Table with No Subrows or Expansion
17
17
  - advanced_table_selectable_rows_rails: Selectable Rows
18
18
  - advanced_table_selectable_rows_no_subrows_rails: Selectable Rows (No Subrows)
19
19
  - advanced_table_selectable_rows_actions_rails: Selectable Rows (With Actions)
20
20
  - advanced_table_selectable_rows_header_rails: Selectable Rows (No Actions Bar)
21
21
  - advanced_table_scrollbar_none: Advanced Table Scrollbar None
22
- - advanced_table_row_styling: Row Styling
23
22
  - advanced_table_column_styling_rails: Column Styling
24
23
  - advanced_table_column_styling_column_headers_rails: Column Styling with Multiple Headers
25
- - advanced_table_column_border_color_rails: Column Group Border Color
26
-
27
24
 
28
25
  react:
29
26
  - advanced_table_default: Default (Required Props)
27
+ - advanced_table_loading: Loading State
30
28
  - advanced_table_sort: Enable Sorting
31
29
  - advanced_table_sort_control: Sort Control
32
- - advanced_table_custom_sort: Custom Sort
33
30
  - advanced_table_expanded_control: Expanded Control
34
31
  - advanced_table_expand_by_depth: Expand by Depth
35
32
  - advanced_table_subrow_headers: SubRow Headers
@@ -40,31 +37,29 @@ examples:
40
37
  - advanced_table_table_props_sticky_header: Sticky Header for Responsive Table
41
38
  - advanced_table_sticky_columns: Sticky Columns
42
39
  - advanced_table_sticky_columns_and_header: Sticky Columns with Sticky Header
40
+ - advanced_table_inline_row_loading: Inline Row Loading
43
41
  - advanced_table_responsive: Responsive Tables
44
42
  - advanced_table_custom_cell: Custom Components for Cells
45
- - advanced_table_with_custom_header: Custom Header Cell
46
43
  - advanced_table_pagination: Pagination
47
44
  - advanced_table_pagination_with_props: Pagination Props
48
- - advanced_table_loading: Loading State
49
- - advanced_table_inline_row_loading: Inline Row Loading
50
45
  - advanced_table_column_headers: Multi-Header Columns
51
46
  - advanced_table_column_headers_multiple: Multi-Header Columns (Multiple Levels)
52
47
  - advanced_table_column_headers_custom_cell: Multi-Header Columns with Custom Cells
48
+ - advanced_table_column_border_color: Column Group Border Color
53
49
  - advanced_table_no_subrows: Table with No Subrows or Expansion
54
- - advanced_table_pinned_rows: Pinned Rows
55
50
  - advanced_table_selectable_rows: Selectable Rows
56
51
  - advanced_table_selectable_rows_no_subrows_react: Selectable Rows (No Subrows)
57
52
  - advanced_table_selectable_rows_actions: Selectable Rows (With Actions)
58
53
  - advanced_table_selectable_rows_header: Selectable Rows (No Actions Bar)
59
54
  - advanced_table_inline_editing: Inline Cell Editing
55
+ - advanced_table_fullscreen: Fullscreen
60
56
  - advanced_table_column_visibility: Column Visibility Control
61
57
  - advanced_table_column_visibility_with_state: Column Visibility Control With State
62
58
  - advanced_table_column_visibility_custom: Column Visibility Control with Custom Dropdown
63
59
  - advanced_table_column_visibility_multi: Column Visibility Control with Multi-Header Columns
60
+ - advanced_table_pinned_rows: Pinned Rows
64
61
  - advanced_table_scrollbar_none: Advanced Table Scrollbar None
65
62
  - advanced_table_row_styling: Row Styling
66
63
  - advanced_table_column_styling: Column Styling
67
64
  - advanced_table_column_styling_column_headers: Column Styling with Multiple Headers
68
- - advanced_table_column_border_color: Column Group Border Color
69
- - advanced_table_fullscreen: Fullscreen
70
65
  - advanced_table_infinite_scroll: Infinite Scroll
@@ -38,5 +38,3 @@ export { default as AdvancedTableRowStyling } from './_advanced_table_row_stylin
38
38
  export { default as AdvancedTableColumnStyling } from './_advanced_table_column_styling.jsx'
39
39
  export { default as AdvancedTableColumnStylingColumnHeaders } from './_advanced_table_column_styling_column_headers.jsx'
40
40
  export { default as AdvancedTableInfiniteScroll} from './_advanced_table_infinite_scroll.jsx'
41
- export {default as AdvancedTableWithCustomHeader} from './_advanced_table_with_custom_header.jsx'
42
- export { default as AdvancedTableCustomSort } from './_advanced_table_custom_sort.jsx'
@@ -23,8 +23,6 @@ module Playbook
23
23
  default: "scroll"
24
24
  prop :selectable_rows, type: Playbook::Props::Boolean,
25
25
  default: false
26
- prop :row_styling, type: Playbook::Props::Array,
27
- default: []
28
26
 
29
27
  def flatten_columns(columns)
30
28
  columns.flat_map do |col|
@@ -68,7 +66,7 @@ module Playbook
68
66
  end
69
67
 
70
68
  # Additional class and data attributes needed for toggle logic
71
- output << pb_rails("advanced_table/table_row", props: { id: id, row: row, column_definitions: leaf_columns, depth: current_depth, collapsible_trail: collapsible_trail, classname: additional_classes, table_data_attributes: current_data_attributes, responsive: responsive, loading: loading, selectable_rows: selectable_rows, row_id: row[:id], enable_toggle_expansion: enable_toggle_expansion, row_styling: row_styling })
69
+ output << pb_rails("advanced_table/table_row", props: { id: id, row: row, column_definitions: leaf_columns, depth: current_depth, collapsible_trail: collapsible_trail, classname: additional_classes, table_data_attributes: current_data_attributes, responsive: responsive, loading: loading, selectable_rows: selectable_rows, row_id: row[:id], enable_toggle_expansion: enable_toggle_expansion })
72
70
 
73
71
  if row[:children].present?
74
72
  row[:children].each do |child_row|
@@ -26,11 +26,7 @@
26
26
  <% end %>
27
27
  <% end %>
28
28
  <% end %>
29
- <% if object.has_header_renderer?(cell) %>
30
- <%= raw(object.render_header(cell)) %>
31
- <% else %>
32
- <%= cell[:label] %>
33
- <% end %>
29
+ <%= cell[:label] %>
34
30
  <% end %>
35
31
  <% end %>
36
32
  <% end %>
@@ -76,30 +76,6 @@ module Playbook
76
76
  end
77
77
  end
78
78
 
79
- # Get original column definition for custom rendering
80
- def find_original_column_def(accessor)
81
- find_column_def_by_accessor(column_definitions, accessor)
82
- end
83
-
84
- # Check if a header cell has a custom renderer
85
- def has_header_renderer?(cell)
86
- return false unless cell[:accessor].present?
87
-
88
- original_def = find_original_column_def(cell[:accessor])
89
- original_def && original_def[:header].present?
90
- end
91
-
92
- # Render custom header content
93
- def render_header(cell)
94
- return cell[:label] unless has_header_renderer?(cell)
95
-
96
- original_def = find_original_column_def(cell[:accessor])
97
- custom_renderer = original_def[:header]
98
-
99
- # Call the custom renderer with the cell data and label
100
- custom_renderer.call(cell, cell[:label])
101
- end
102
-
103
79
  private
104
80
 
105
81
  def compute_max_depth(columns)
@@ -172,18 +148,6 @@ module Playbook
172
148
  end
173
149
  wrapped
174
150
  end
175
-
176
- def find_column_def_by_accessor(defs, target_accessor)
177
- defs.each do |col|
178
- return col if col[:accessor] == target_accessor
179
-
180
- if col[:columns].is_a?(Array)
181
- found = find_column_def_by_accessor(col[:columns], target_accessor)
182
- return found if found
183
- end
184
- end
185
- nil
186
- end
187
151
  end
188
152
  end
189
153
  end
@@ -1,10 +1,3 @@
1
- <%
2
- row_style = object.row_styling.find { |style| style[:row_id].to_s == object.row_id.to_s }
3
- button_color = row_style&.[](:expand_button_color)
4
- bg_color = row_style&.[](:background_color)
5
- font_color = row_style&.[](:font_color)
6
- %>
7
-
8
1
  <%= pb_content_tag(:tr) do %>
9
2
  <% has_separate_checkbox = object.selectable_rows && object.enable_toggle_expansion == "none" %>
10
3
  <% if has_separate_checkbox %>
@@ -12,7 +5,7 @@
12
5
  <% end %>
13
6
  <% object.column_definitions.each_with_index do |column, index| %>
14
7
  <% next unless column[:accessor].present? %>
15
- <%= pb_rails("table/table_cell", props: { html_options: { style: { "background-color": bg_color, color: font_color } }, classname:object.td_classname(column, index)}) do %>
8
+ <%= pb_rails("table/table_cell", props: { classname:object.td_classname(column, index)}) do %>
16
9
  <%= pb_rails("flex", props:{ align: "center", justify: object.justify_for(column, index), classname: object.loading ? "loading-cell" : "" }) do %>
17
10
  <% if collapsible_trail && index.zero? %>
18
11
  <% (1..depth).each do |i| %>
@@ -35,9 +28,7 @@
35
28
  <button
36
29
  id="<%= "#{object.id}_#{object.row.object_id}" %>"
37
30
  class="gray-icon expand-toggle-icon"
38
- data-advanced-table="true"
39
- style="color: <%= button_color %>"
40
- >
31
+ data-advanced-table="true">
41
32
  <%= pb_rails("icon", props: { id: "advanced-table_open_icon", icon: "circle-play", cursor: "pointer" }) %>
42
33
  <%= pb_rails("icon", props: { id: "advanced-table_close_icon", icon: "circle-play-down", cursor: "pointer" }) %>
43
34
  </button>
@@ -27,8 +27,6 @@ module Playbook
27
27
  prop :enable_toggle_expansion, type: Playbook::Props::Enum,
28
28
  values: %w[all header none],
29
29
  default: "header"
30
- prop :row_styling, type: Playbook::Props::Array,
31
- default: []
32
30
 
33
31
  def data
34
32
  Hash(prop(:data)).merge(table_data_attributes)
@@ -5,7 +5,7 @@
5
5
  @import "../tokens/typography";
6
6
 
7
7
  [class^=pb_badge_kit] {
8
- $pb_badge_height_rounded: 16px;
8
+ $pb_badge_height: 18px;
9
9
 
10
10
  display: inline-flex;
11
11
  align-items: center;
@@ -13,6 +13,7 @@
13
13
  border-radius: $border_rad_light;
14
14
  padding: 0 $space_xs/2;
15
15
  border-width: 1px;
16
+ border-style: solid;
16
17
  border-color: $card_light;
17
18
  white-space: nowrap;
18
19
 
@@ -30,10 +31,10 @@
30
31
  }
31
32
 
32
33
  &[class*=_rounded] {
33
- height: $pb_badge_height_rounded;
34
- min-height: $pb_badge_height_rounded;
35
- min-width: $pb_badge_height_rounded;
36
- border-radius: $pb_badge_height_rounded / 2;
34
+ height: $pb_badge_height;
35
+ min-height: $pb_badge_height;
36
+ min-width: $pb_badge_height;
37
+ border-radius: $pb_badge_height / 2;
37
38
  }
38
39
 
39
40
  &[class*=_notification] {
@@ -1,10 +1,6 @@
1
1
  import React from 'react'
2
- import colors from '../../tokens/exports/_colors.module.scss'
3
- import barGraphTheme from '../barGraphTheme';
4
- import Highcharts from "highcharts";
5
- import HighchartsReact from "highcharts-react-official";
6
-
7
2
 
3
+ import BarGraph from '../_bar_graph'
8
4
 
9
5
  const chartData = [{
10
6
  name: 'Installation',
@@ -23,33 +19,19 @@ const chartData = [{
23
19
  data: [1111, 677, 3245, 500, 200],
24
20
  }]
25
21
 
26
- const chartOptions = {
27
- series: chartData,
28
- title: {
29
- text: "Bar Graph with Custom Data Colors",
30
- },
31
- xAxis: {
32
- categories: ["Jan", "Feb", "Mar", "Apr", "May"],
33
- },
34
- yAxis: {
35
- title: {
36
- text: "Number of Employees",
37
- },
38
- },
39
- colors: [colors.data_4, colors.data_5, colors.data_6, colors.data_7, colors.data_8],
40
- }
41
-
42
- const BarGraphColors = () => {
43
- const options = Highcharts.merge({}, barGraphTheme, chartOptions)
44
-
45
- return (
46
- <div>
47
- <HighchartsReact
48
- highcharts={Highcharts}
49
- options={options}
50
- />
51
- </div>
52
- )
53
- }
22
+ const BarGraphColors = (props) => (
23
+ <div>
24
+ <BarGraph
25
+ axisTitle="Number of Employees"
26
+ chartData={chartData}
27
+ colors={['data-4', 'data-5', 'data-6', 'data-7', 'data-8']}
28
+ id="bar-colors"
29
+ title="Bar Graph with Custom Data Colors"
30
+ xAxisCategories={['Jan', 'Feb', 'Mar', 'Apr', 'May']}
31
+ yAxisMin={0}
32
+ {...props}
33
+ />
34
+ </div>
35
+ )
54
36
 
55
37
  export default BarGraphColors
@@ -0,0 +1,72 @@
1
+ import React from 'react'
2
+ import ReactDOMServer from 'react-dom/server'
3
+ import BarGraph from '../_bar_graph'
4
+ import Icon from '../../pb_icon/_icon'
5
+
6
+ const chartData = [
7
+ {
8
+ name: 'Role',
9
+ data: [0, 200, 300, 654, 656],
10
+ },
11
+ {
12
+ name: 'Company',
13
+ data: [150, 524, 320, 440, 500],
14
+ },
15
+ ]
16
+
17
+ const renderIcon = (iconName, color) => {
18
+ return ReactDOMServer.renderToStaticMarkup(
19
+ <Icon
20
+ color={color}
21
+ icon={iconName}
22
+ />)
23
+ };
24
+
25
+ const barGraphOptions = {
26
+ yAxis: {
27
+ tickInterval: 5,
28
+ },
29
+ xAxis: {
30
+ categories: ['1', '2', '3', '4', '5'],
31
+ labels: {
32
+ useHTML: true,
33
+ formatter: function () {
34
+ switch (this.value) {
35
+ case '1':
36
+ return `${renderIcon('frown', 'error')}`;
37
+ case '2':
38
+ return `${renderIcon('frown', 'warning')}`;
39
+ case '3':
40
+ return `${renderIcon('frown-open', 'neutral')}`;
41
+ case '4':
42
+ return `${renderIcon('smile', 'category_7')}`;
43
+ case '5':
44
+ return `${renderIcon('smile-beam', 'success')}`;
45
+ default:
46
+ return ''
47
+ }
48
+ },
49
+ style: {
50
+ fontSize: '1.4em',
51
+ },
52
+ y: 42,
53
+ },
54
+ },
55
+ legend: {
56
+ itemMarginTop: 62,
57
+ },
58
+ }
59
+
60
+ const BarGraphCustom = () => (
61
+ <div>
62
+ <BarGraph
63
+ chartData={chartData}
64
+ customOptions={barGraphOptions}
65
+ id="happiness-dashboard"
66
+ legend
67
+ title="Bar Graph with Custom Overrides"
68
+ />
69
+ </div>
70
+ )
71
+
72
+ export default BarGraphCustom
@@ -0,0 +1,6 @@
1
+ The `customOptions` prop provides comprehensive access to additional [Highcharts options](https://api.highcharts.com/highcharts/) that are not explicitly defined as props.
2
+ It's important to note that certain options may require specific script imports to function properly.
3
+
4
+ Note: If you are having trouble getting any Highcharts options to work, please match the formatting of our [staticOptions](https://github.com/powerhome/playbook/blob/master/playbook/app/pb_kits/playbook/pb_bar_graph/_bar_graph.tsx#L85-L141). For example, `yAxis` will need to be wrapped with square brackets.
5
+
6
+ You may also need to override any of the [defaults](https://github.com/powerhome/playbook/blob/master/playbook/app/pb_kits/playbook/pb_bar_graph/_bar_graph.tsx#L45-L73) in order to get that options to work.
@@ -1,8 +1,6 @@
1
1
  import React from 'react'
2
- import barGraphTheme from '../barGraphTheme';
3
- import Highcharts from "highcharts";
4
- import HighchartsReact from "highcharts-react-official";
5
2
 
3
+ import BarGraph from '../_bar_graph'
6
4
 
7
5
  const chartData = [{
8
6
  name: 'Installation',
@@ -21,35 +19,19 @@ const chartData = [{
21
19
  data: [1111, 677, 3245, 500, 200],
22
20
  }]
23
21
 
24
- const chartOptions = {
25
- series: chartData,
26
- title: {
27
- text: 'Solar Employment Growth by Sector, 2010-2016',
28
- },
29
- subtitle: {
30
- text: 'Source: thesolarfoundation.com',
31
- },
32
- xAxis: {
33
- categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
34
- },
35
- yAxis: {
36
- title: {
37
- text: 'Number of Employees',
38
- },
39
- },
40
- }
41
-
42
- const BarGraphDefault = () => {
43
- const options = Highcharts.merge({}, barGraphTheme, chartOptions)
44
-
45
- return (
46
- <div>
47
- <HighchartsReact
48
- highcharts={Highcharts}
49
- options={options}
50
- />
51
- </div>
52
- )
53
- }
22
+ const BarGraphDefault = (props) => (
23
+ <div>
24
+ <BarGraph
25
+ axisTitle="Number of Employees"
26
+ chartData={chartData}
27
+ id="bar-default"
28
+ subTitle="Source: thesolarfoundation.com"
29
+ title="Solar Employment Growth by Sector, 2010-2016"
30
+ xAxisCategories={['Jan', 'Feb', 'Mar', 'Apr', 'May']}
31
+ yAxisMin={0}
32
+ {...props}
33
+ />
34
+ </div>
35
+ )
54
36
 
55
37
  export default BarGraphDefault