playbook_ui 13.19.0.pre.alpha.PBNTR211tablekitsubcomponentsreact2318 → 13.19.0.pre.alpha.play1141iconkitusinglibrary2264

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/index.js +1 -1
  3. data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.tsx +4 -4
  4. data/app/pb_kits/playbook/pb_table/_table.tsx +67 -99
  5. data/app/pb_kits/playbook/pb_table/_table_row.tsx +47 -0
  6. data/app/pb_kits/playbook/pb_table/docs/_table_side_highlight.jsx +25 -24
  7. data/app/pb_kits/playbook/pb_table/docs/example.yml +0 -7
  8. data/app/pb_kits/playbook/pb_table/docs/index.js +0 -3
  9. data/app/pb_kits/playbook/pb_table/styles/_content.scss +3 -3
  10. data/app/pb_kits/playbook/pb_table/styles/_desktop_collapse.scss +15 -15
  11. data/app/pb_kits/playbook/pb_table/styles/_headers.scss +3 -3
  12. data/app/pb_kits/playbook/pb_table/styles/_hover.scss +11 -11
  13. data/app/pb_kits/playbook/pb_table/styles/_mobile.scss +15 -15
  14. data/app/pb_kits/playbook/pb_table/styles/_mobile_collapse.scss +15 -15
  15. data/app/pb_kits/playbook/pb_table/styles/_reset.scss +3 -3
  16. data/app/pb_kits/playbook/pb_table/styles/_side_highlight.scss +2 -2
  17. data/app/pb_kits/playbook/pb_table/styles/_single-line.scss +4 -4
  18. data/app/pb_kits/playbook/pb_table/styles/_sticky_header.scss +2 -2
  19. data/app/pb_kits/playbook/pb_table/styles/_striped.scss +4 -4
  20. data/app/pb_kits/playbook/pb_table/styles/_structure.scss +8 -22
  21. data/app/pb_kits/playbook/pb_table/styles/_table-card.scss +7 -7
  22. data/app/pb_kits/playbook/pb_table/styles/_table-dark.scss +14 -14
  23. data/app/pb_kits/playbook/pb_table/styles/_table_header.scss +2 -2
  24. data/app/pb_kits/playbook/pb_table/styles/_tablet_collapse.scss +15 -15
  25. data/app/pb_kits/playbook/pb_table/styles/_vertical_border.scss +4 -3
  26. data/app/pb_kits/playbook/pb_table/table.html.erb +2 -12
  27. data/app/pb_kits/playbook/pb_table/table.rb +0 -3
  28. data/app/pb_kits/playbook/pb_table/table.test.js +1 -142
  29. data/app/pb_kits/playbook/pb_table/table_header.html.erb +39 -49
  30. data/app/pb_kits/playbook/pb_table/table_header.rb +1 -8
  31. data/app/pb_kits/playbook/pb_table/table_row.html.erb +7 -17
  32. data/app/pb_kits/playbook/pb_table/table_row.rb +1 -8
  33. data/dist/playbook-rails.js +6 -6
  34. data/lib/playbook/version.rb +1 -1
  35. metadata +3 -20
  36. data/app/pb_kits/playbook/pb_table/SubKits/_table_body.tsx +0 -64
  37. data/app/pb_kits/playbook/pb_table/SubKits/_table_cell.tsx +0 -66
  38. data/app/pb_kits/playbook/pb_table/SubKits/_table_head.tsx +0 -64
  39. data/app/pb_kits/playbook/pb_table/SubKits/_table_header.tsx +0 -66
  40. data/app/pb_kits/playbook/pb_table/SubKits/_table_row.tsx +0 -74
  41. data/app/pb_kits/playbook/pb_table/SubKits/index.tsx +0 -5
  42. data/app/pb_kits/playbook/pb_table/docs/_table_div.html.erb +0 -34
  43. data/app/pb_kits/playbook/pb_table/docs/_table_div.jsx +0 -47
  44. data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents.html.erb +0 -34
  45. data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents.jsx +0 -47
  46. data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_as_divs.html.erb +0 -34
  47. data/app/pb_kits/playbook/pb_table/docs/_table_with_subcomponents_as_divs.jsx +0 -48
  48. data/app/pb_kits/playbook/pb_table/table_body.html.erb +0 -17
  49. data/app/pb_kits/playbook/pb_table/table_body.rb +0 -15
  50. data/app/pb_kits/playbook/pb_table/table_cell.html.erb +0 -17
  51. data/app/pb_kits/playbook/pb_table/table_cell.rb +0 -17
  52. data/app/pb_kits/playbook/pb_table/table_head.html.erb +0 -17
  53. data/app/pb_kits/playbook/pb_table/table_head.rb +0 -15
@@ -1,58 +1,7 @@
1
- import React from "react";
2
- import { ensureAccessible, renderKit, render, screen } from "../utilities/test-utils"
1
+ import { ensureAccessible, renderKit } from "../utilities/test-utils"
3
2
 
4
3
  import Table from "./_table"
5
4
 
6
- const DivsTable = () => {
7
- return (
8
- <>
9
- <Table
10
- data={{testid: "table"}}
11
- size="sm"
12
- tag="div"
13
- >
14
- <Table.Head tag="div">
15
- <Table.Row tag="div">
16
- <Table.Header tag="div">{"Column 1"}</Table.Header>
17
- <Table.Header tag="div">{"Column 2"}</Table.Header>
18
- </Table.Row>
19
- </Table.Head>
20
- <Table.Body tag="div">
21
- <Table.Row tag="div">
22
- <Table.Cell tag="div">{"Value 1"}</Table.Cell>
23
- <Table.Cell tag="div">{"Value 2"}</Table.Cell>
24
- </Table.Row>
25
- </Table.Body>
26
- </Table>
27
- </>
28
- );
29
- };
30
-
31
- const TableTagTable = () => {
32
- return (
33
- <>
34
- <Table
35
- data={{testid: "table"}}
36
- size="sm"
37
- >
38
- <Table.Head>
39
- <Table.Row>
40
- <Table.Header>{"Column 1"}</Table.Header>
41
- <Table.Header>{"Column 2"}</Table.Header>
42
- </Table.Row>
43
- </Table.Head>
44
- <Table.Body>
45
- <Table.Row>
46
- <Table.Cell>{"Value 1"}</Table.Cell>
47
- <Table.Cell>{"Value 2"}</Table.Cell>
48
- </Table.Row>
49
- </Table.Body>
50
- </Table>
51
- </>
52
- );
53
- };
54
-
55
-
56
5
  const props = {
57
6
  data: { testid: "table" },
58
7
  sticky: false
@@ -71,93 +20,3 @@ test("when striped is true", () => {
71
20
  const kit = renderKit(Table, props, { striped: true })
72
21
  expect(kit).toHaveClass("pb_table table-sm table-responsive-collapse table-card striped table-collapse-sm")
73
22
  })
74
-
75
- test("Renders Table.Head subkit for Div Table", () => {
76
- render (<DivsTable/>)
77
-
78
- const kit = screen.getByTestId("table")
79
- const head = kit.querySelector(".pb_table_thead")
80
- expect(head).toBeInTheDocument()
81
- expect(head.tagName).toBe("DIV")
82
- })
83
-
84
- test("Renders Table.Header subkit for Div Table", () => {
85
- render (<DivsTable/>)
86
-
87
- const kit = screen.getByTestId("table")
88
- const head = kit.querySelector(".pb_table_th")
89
- expect(head).toBeInTheDocument()
90
- expect(head.tagName).toBe("DIV")
91
- })
92
-
93
- test("Renders Table.Body subkit for Div Table", () => {
94
- render (<DivsTable/>)
95
-
96
- const kit = screen.getByTestId("table")
97
- const head = kit.querySelector(".pb_table_tbody")
98
- expect(head).toBeInTheDocument()
99
- expect(head.tagName).toBe("DIV")
100
- })
101
-
102
- test("Renders Table.Row subkit for Div Table", () => {
103
- render (<DivsTable/>)
104
-
105
- const kit = screen.getByTestId("table")
106
- const head = kit.querySelector(".pb_table_tr")
107
- expect(head).toBeInTheDocument()
108
- expect(head.tagName).toBe("DIV")
109
- })
110
-
111
- test("Renders Table.Cell subkit for Div Table", () => {
112
- render (<DivsTable/>)
113
-
114
- const kit = screen.getByTestId("table")
115
- const head = kit.querySelector(".pb_table_td")
116
- expect(head).toBeInTheDocument()
117
- expect(head.tagName).toBe("DIV")
118
- })
119
-
120
- test("Renders Table.Head subkit for HTML Table elements Table", () => {
121
- render (<TableTagTable/>)
122
-
123
- const kit = screen.getByTestId("table")
124
- const head = kit.querySelector(".pb_table_thead")
125
- expect(head).toBeInTheDocument()
126
- expect(head.tagName).toBe("THEAD")
127
- })
128
-
129
- test("Renders Table.Header subkit for HTML Table elements Table", () => {
130
- render (<TableTagTable/>)
131
-
132
- const kit = screen.getByTestId("table")
133
- const head = kit.querySelector(".pb_table_th")
134
- expect(head).toBeInTheDocument()
135
- expect(head.tagName).toBe("TH")
136
- })
137
-
138
- test("Renders Table.Body subkit for HTML Table elements Table", () => {
139
- render (<TableTagTable/>)
140
-
141
- const kit = screen.getByTestId("table")
142
- const head = kit.querySelector(".pb_table_tbody")
143
- expect(head).toBeInTheDocument()
144
- expect(head.tagName).toBe("TBODY")
145
- })
146
-
147
- test("Renders Table.Row subkit for HTML Table elements Table", () => {
148
- render (<TableTagTable/>)
149
-
150
- const kit = screen.getByTestId("table")
151
- const head = kit.querySelector(".pb_table_tr")
152
- expect(head).toBeInTheDocument()
153
- expect(head.tagName).toBe("TR")
154
- })
155
-
156
- test("Renders Table.Cell subkit for HTML Table elements Table", () => {
157
- render (<TableTagTable/>)
158
-
159
- const kit = screen.getByTestId("table")
160
- const head = kit.querySelector(".pb_table_td")
161
- expect(head).toBeInTheDocument()
162
- expect(head.tagName).toBe("TD")
163
- })
@@ -1,57 +1,47 @@
1
- <% if object.tag == "table" %>
2
- <%= content_tag(:th,
3
- colspan: object.colspan,
4
- aria: object.aria,
5
- class: object.classname,
6
- data: object.data,
7
- id: "pb-th#{object.id}" ) do %>
8
- <% unless sorting_style? %>
9
- <%= pb_rails("flex", props:{ align: object.align_content, justify: object.justify_sort_icon, classname: "pb_th_nolink" }) do %>
1
+ <%= content_tag(:th,
2
+ colspan: object.colspan,
3
+ aria: object.aria,
4
+ class: object.classname,
5
+ data: object.data,
6
+ id: "pb-th#{object.id}" ) do %>
7
+ <% unless sorting_style? %>
8
+ <%= pb_rails("flex", props:{ align: object.align_content, justify: object.justify_sort_icon, classname: "pb_th_nolink" }) do %>
9
+ <%= content.presence || object.text %>
10
+ <% end %>
11
+ <% else %>
12
+ <%= link_to next_link, style: link_style do %>
13
+ <%= pb_rails("flex", props:{ align: object.align_content, justify: object.justify_sort_icon, classname: "pb_th_link" }) do %>
10
14
  <%= content.presence || object.text %>
11
- <% end %>
12
- <% else %>
13
- <%= link_to next_link, style: link_style do %>
14
- <%= pb_rails("flex", props:{ align: object.align_content, justify: object.justify_sort_icon, classname: "pb_th_link" }) do %>
15
- <%= content.presence || object.text %>
16
- <% if sorting_style? %>
17
- <%= pb_rails("icon", props: { icon: object.sort_icon(active_item[:direction], active_item[:active]),
18
- fixed_width: true,
19
- classname: active_item.any? ? "pb_th_active" : "",
20
- padding_left: "xs" }) %>
21
- <% end %>
15
+ <% if sorting_style? %>
16
+ <%= pb_rails("icon", props: { icon: object.sort_icon(active_item[:direction], active_item[:active]),
17
+ fixed_width: true,
18
+ classname: active_item.any? ? "pb_th_active" : "",
19
+ padding_left: "xs" }) %>
22
20
  <% end %>
23
21
  <% end %>
24
- <% if use_dropdown_select %>
25
- <%= pb_rails("popover", props: { classname: "pb_filter_sort_menu",
26
- close_on_click: "outside",
27
- trigger_element_id: "pb-th#{object.id}",
28
- tooltip_id: "sort-filter-btn-tooltip#{object.id}",
29
- position: object.placement ,
30
- padding: 'none'}) do %>
31
- <%= pb_rails("nav", props: {classname: "pb_table_header_dropdown"}) do %>
32
- <% object.sort_items.each do |sort_item| %>
33
- <% item = active_or_first_item(sort_items_for(sort_item)) %>
34
- <%= pb_rails("nav/item", props: {
35
- text: item[:item],
36
- link: next_link(sort_item: sort_item),
37
- highlighted_border: false,
38
- padding: "xs",
39
- icon_right: sort_icon(item[:direction], item[:active]),
40
- active: item[:active],
41
- classname: "header_nav_item"
42
- }) %>
43
- <% end %>
22
+ <% end %>
23
+ <% if use_dropdown_select %>
24
+ <%= pb_rails("popover", props: { classname: "pb_filter_sort_menu",
25
+ close_on_click: "outside",
26
+ trigger_element_id: "pb-th#{object.id}",
27
+ tooltip_id: "sort-filter-btn-tooltip#{object.id}",
28
+ position: object.placement ,
29
+ padding: 'none'}) do %>
30
+ <%= pb_rails("nav", props: {classname: "pb_table_header_dropdown"}) do %>
31
+ <% object.sort_items.each do |sort_item| %>
32
+ <% item = active_or_first_item(sort_items_for(sort_item)) %>
33
+ <%= pb_rails("nav/item", props: {
34
+ text: item[:item],
35
+ link: next_link(sort_item: sort_item),
36
+ highlighted_border: false,
37
+ padding: "xs",
38
+ icon_right: sort_icon(item[:direction], item[:active]),
39
+ active: item[:active],
40
+ classname: "header_nav_item"
41
+ }) %>
44
42
  <% end %>
45
43
  <% end %>
46
44
  <% end %>
47
45
  <% end %>
48
46
  <% end %>
49
- <% else %>
50
- <%= content_tag(:div,
51
- aria: object.aria,
52
- class: object.classname,
53
- data: object.data,
54
- id: object.id) do %>
55
- <%= content.presence || object.text %>
56
- <% end %>
57
- <% end %>
47
+ <% end %>
@@ -23,16 +23,9 @@ module Playbook
23
23
  default: ""
24
24
  prop :sort_dropdown, type: Playbook::Props::Boolean,
25
25
  default: false
26
- prop :tag, type: Playbook::Props::Enum,
27
- values: %w[table div],
28
- default: "table"
29
26
 
30
27
  def classname
31
- generate_classname("pb_table_header_kit", align_class) + tag_class
32
- end
33
-
34
- def tag_class
35
- " pb_table_th"
28
+ generate_classname("pb_table_header_kit", align_class)
36
29
  end
37
30
 
38
31
  def align_class
@@ -1,17 +1,7 @@
1
- <% if object.tag == "table" %>
2
- <%= content_tag(:tr,
3
- aria: object.aria,
4
- class: object.classname,
5
- data: object.data,
6
- id: object.id) do %>
7
- <%= content.presence %>
8
- <% end %>
9
- <% else %>
10
- <%= content_tag(:div,
11
- aria: object.aria,
12
- class: object.classname,
13
- data: object.data,
14
- id: object.id) do %>
15
- <%= content.presence %>
16
- <% end %>
17
- <% end %>
1
+ <%= content_tag(:tr,
2
+ aria: object.aria,
3
+ class: object.classname,
4
+ data: object.data,
5
+ id: object.id) do %>
6
+ <%= content.presence %>
7
+ <% end %>
@@ -5,21 +5,14 @@ module Playbook
5
5
  class TableRow < Playbook::KitBase
6
6
  prop :side_highlight_color, type: Playbook::Props::String,
7
7
  default: "none"
8
- prop :tag, type: Playbook::Props::Enum,
9
- values: %w[table div],
10
- default: "table"
11
8
 
12
9
  def classname
13
- generate_classname("pb_table_row_kit", side_highlight_class) + tag_class
10
+ generate_classname("pb_table_row_kit", side_highlight_class)
14
11
  end
15
12
 
16
13
  def side_highlight_class
17
14
  side_highlight_color.present? ? "side_highlight_#{side_highlight_color}" : nil
18
15
  end
19
-
20
- def tag_class
21
- " pb_table_tr"
22
- end
23
16
  end
24
17
  end
25
18
  end