playbook_ui_docs 14.12.0.pre.rc.11 → 14.12.0.pre.rc.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_no_subrows.jsx +50 -0
  3. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination.jsx +1 -0
  4. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination_with_props.jsx +1 -0
  5. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows.jsx +60 -0
  6. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows.md +5 -0
  7. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_actions.jsx +78 -0
  8. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_actions.md +1 -0
  9. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_header.jsx +53 -0
  10. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_header.md +1 -0
  11. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows.jsx +52 -0
  12. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows.md +1 -0
  13. data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort_control.md +2 -2
  14. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_mock_data_no_subrows.json +42 -0
  15. data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_mock_data_with_id.json +299 -0
  16. data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +5 -0
  17. data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +6 -1
  18. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_turbo_frames.html.erb +13 -0
  19. data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_turbo_frames_rails.md +3 -0
  20. data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +1 -0
  21. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_behavior.jsx +38 -0
  22. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_borders.jsx +3 -45
  23. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_breakpoints.jsx +0 -1
  24. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_default.jsx +9 -16
  25. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.jsx +44 -19
  26. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.md +21 -3
  27. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_overlay.jsx +16 -21
  28. data/app/pb_kits/playbook/pb_drawer/docs/_drawer_sizes.jsx +2 -19
  29. data/app/pb_kits/playbook/pb_drawer/docs/example.yml +2 -1
  30. data/app/pb_kits/playbook/pb_drawer/docs/index.js +1 -0
  31. data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subtle_variant.md +1 -1
  32. data/app/pb_kits/playbook/pb_icon_button/docs/_icon_button_default.html.erb +3 -0
  33. data/app/pb_kits/playbook/pb_icon_button/docs/example.yml +7 -0
  34. data/app/pb_kits/playbook/pb_radio/docs/_radio_custom_children.jsx +8 -3
  35. data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_default.jsx +4 -1
  36. data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_single_select.jsx +4 -1
  37. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.html.erb +47 -0
  38. data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_rails.md +2 -0
  39. data/app/pb_kits/playbook/pb_table/docs/example.yml +1 -0
  40. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_mask.html.erb +46 -0
  41. data/app/pb_kits/playbook/pb_text_input/docs/_text_input_mask_rails.md +3 -0
  42. data/app/pb_kits/playbook/pb_text_input/docs/example.yml +2 -1
  43. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.html.erb +19 -0
  44. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.jsx +27 -0
  45. data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.md +1 -0
  46. data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +2 -0
  47. data/app/pb_kits/playbook/pb_typeahead/docs/index.js +1 -0
  48. data/dist/playbook-doc.js +1 -1
  49. metadata +26 -3
  50. /data/app/pb_kits/playbook/pb_table/docs/{_table_with_collapsible.md → _table_with_collapsible_react.md} +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 427bfc3d5e71d87bb8f069471caf1088e6719e1728f52a5a886e2038d6ab5341
4
- data.tar.gz: 7d1599f0ba6ce11891f0d016c44a2bd40b33384e5ce23fa0a10469f04a36e97e
3
+ metadata.gz: aed297192a31a68c2796f904fe15b530b772dc0ddf08b72d26853e0edae7fe62
4
+ data.tar.gz: eec28062248b92ed7ad275c23f7c0abb2fbed1638906a5a83e9d71c9d9281c0c
5
5
  SHA512:
6
- metadata.gz: 8189c453fcbfe4f344f88eb81c0947da90b34edd40306916a1873ec4afe15f600e65885522e5384e84201ce834a3183cf367453836e83508f6276276590e16f7
7
- data.tar.gz: 4084e79c437a1bf6e5010342721de251c84b9ad8135b401c22d359bbe9d77744bf2056425a6a2c9f8f9d6ce666db903f4da8fd0adeb5779442ace09394a13999
6
+ metadata.gz: f629b83b8df92f300c594fb57af36233e082b6e0817042dbd95f28a2b0cd1f74cfffce441d5622c4485f437fc3b1c4529befc154e7c04ab9321c3266c1b09974
7
+ data.tar.gz: 551aefb013795967ece1c48bd135d0b060b77a71d85546148ea85653224b50e06a9ccb3d216126399e03d12ee67b818fa2b0fb9a415f6ec877664296b859a9d7
@@ -0,0 +1,50 @@
1
+ import React from "react"
2
+ import { AdvancedTable } from "playbook-ui"
3
+ import MOCK_DATA from "./advanced_table_mock_data_no_subrows.json"
4
+
5
+ const AdvancedTableNoSubrows = (props) => {
6
+ const columnDefinitions = [
7
+ {
8
+ accessor: "year",
9
+ label: "Year",
10
+ cellAccessors: ["quarter", "month", "day"],
11
+ },
12
+ {
13
+ accessor: "newEnrollments",
14
+ label: "New Enrollments",
15
+ },
16
+ {
17
+ accessor: "scheduledMeetings",
18
+ label: "Scheduled Meetings",
19
+ },
20
+ {
21
+ accessor: "attendanceRate",
22
+ label: "Attendance Rate",
23
+ },
24
+ {
25
+ accessor: "completedClasses",
26
+ label: "Completed Classes",
27
+ },
28
+ {
29
+ accessor: "classCompletionRate",
30
+ label: "Class Completion Rate",
31
+ },
32
+ {
33
+ accessor: "graduatedStudents",
34
+ label: "Graduated Students",
35
+ },
36
+ ]
37
+
38
+ return (
39
+ <div>
40
+ <AdvancedTable
41
+ columnDefinitions={columnDefinitions}
42
+ enableToggleExpansion="all"
43
+ tableData={MOCK_DATA}
44
+ {...props}
45
+ />
46
+ </div>
47
+ )
48
+ }
49
+
50
+ export default AdvancedTableNoSubrows
@@ -40,6 +40,7 @@ const AdvancedTablePagination = (props) => {
40
40
  <AdvancedTable
41
41
  columnDefinitions={columnDefinitions}
42
42
  pagination
43
+ responsive="none"
43
44
  tableData={PAGINATION_MOCK_DATA}
44
45
  {...props}
45
46
  />
@@ -47,6 +47,7 @@ const AdvancedTablePaginationWithProps = (props) => {
47
47
  columnDefinitions={columnDefinitions}
48
48
  pagination
49
49
  paginationProps={paginationProps}
50
+ responsive="none"
50
51
  tableData={PAGINATION_MOCK_DATA}
51
52
  {...props}
52
53
  />
@@ -0,0 +1,60 @@
1
+ import React from "react"
2
+ import { AdvancedTable } from "playbook-ui"
3
+ import MOCK_DATA from "./advanced_table_mock_data_with_id.json"
4
+
5
+ const AdvancedTableSelectableRows = (props) => {
6
+ const columnDefinitions = [
7
+ {
8
+ accessor: "year",
9
+ label: "Year",
10
+ cellAccessors: ["quarter", "month", "day"],
11
+ },
12
+ {
13
+ accessor: "newEnrollments",
14
+ label: "New Enrollments",
15
+ },
16
+ {
17
+ accessor: "scheduledMeetings",
18
+ label: "Scheduled Meetings",
19
+ },
20
+ {
21
+ accessor: "attendanceRate",
22
+ label: "Attendance Rate",
23
+ },
24
+ {
25
+ accessor: "completedClasses",
26
+ label: "Completed Classes",
27
+ },
28
+ {
29
+ accessor: "classCompletionRate",
30
+ label: "Class Completion Rate",
31
+ },
32
+ {
33
+ accessor: "graduatedStudents",
34
+ label: "Graduated Students",
35
+ },
36
+ ]
37
+
38
+ //Render the subRow header rows
39
+ const subRowHeaders = ["Quarter", "Month", "Day"]
40
+
41
+
42
+ return (
43
+ <div>
44
+ <AdvancedTable
45
+ columnDefinitions={columnDefinitions}
46
+ enableToggleExpansion="all"
47
+ onRowSelectionChange={(selectedRows) => console.log(selectedRows)}
48
+ selectableRows
49
+ tableData={MOCK_DATA}
50
+
51
+ {...props}
52
+ >
53
+ <AdvancedTable.Header />
54
+ <AdvancedTable.Body subRowHeaders={subRowHeaders}/>
55
+ </AdvancedTable>
56
+ </div>
57
+ )
58
+ }
59
+
60
+ export default AdvancedTableSelectableRows
@@ -0,0 +1,5 @@
1
+ `selectableRows` is a boolean prop that if present will add checkboxes to all rows that will allow for selecting rows.
2
+
3
+ When a parent row is clicked, it will check all nested children rows, Children rows can be manually checked or unchecked as well.
4
+
5
+ The `onRowSelectionChange` prop returns an array of ids of all Rows that have been selected. Open the console on this example and check and uncheck checkboxes to see this is action! __NOTE__: Each object within the `tableData`Array must contain a unique id in order to attach an id to all Rows for this to function.
@@ -0,0 +1,78 @@
1
+ import React, {useState} from "react"
2
+ import { AdvancedTable, CircleIconButton, Flex } from "playbook-ui"
3
+ import MOCK_DATA from "./advanced_table_mock_data_no_subrows.json"
4
+
5
+ const AdvancedTableSelectableRowsActions = (props) => {
6
+ const columnDefinitions = [
7
+ {
8
+ accessor: "year",
9
+ label: "Year",
10
+ cellAccessors: ["quarter", "month", "day"],
11
+ },
12
+ {
13
+ accessor: "newEnrollments",
14
+ label: "New Enrollments",
15
+ },
16
+ {
17
+ accessor: "scheduledMeetings",
18
+ label: "Scheduled Meetings",
19
+ },
20
+ {
21
+ accessor: "attendanceRate",
22
+ label: "Attendance Rate",
23
+ },
24
+ {
25
+ accessor: "completedClasses",
26
+ label: "Completed Classes",
27
+ },
28
+ {
29
+ accessor: "classCompletionRate",
30
+ label: "Class Completion Rate",
31
+ },
32
+ {
33
+ accessor: "graduatedStudents",
34
+ label: "Graduated Students",
35
+ },
36
+ ]
37
+
38
+ const [selectedRows, setSelectedRows] = useState()
39
+
40
+ const CustomActions = () => {
41
+ const rowIds = selectedRows ? Object.keys(selectedRows) : [];
42
+
43
+ return (
44
+ <Flex>
45
+ <CircleIconButton
46
+ icon="file-csv"
47
+ onClick={() =>
48
+ alert(rowIds.length === 0 ? "No Selection Made" : `Row ids ${rowIds.join(", ")} will be exported!`)
49
+ }
50
+ variant="link"
51
+ />
52
+ <CircleIconButton
53
+ icon="trash-alt"
54
+ onClick={() =>
55
+ alert(rowIds.length === 0 ? "No Selection Made" : `Row ids ${rowIds.join(", ")} will be deleted!`)
56
+ }
57
+ variant="link"
58
+ />
59
+ </Flex>
60
+ );
61
+ };
62
+
63
+
64
+ return (
65
+ <div>
66
+ <AdvancedTable
67
+ actions={<CustomActions/>}
68
+ columnDefinitions={columnDefinitions}
69
+ onRowSelectionChange={(selected) => setSelectedRows(selected)}
70
+ selectableRows
71
+ tableData={MOCK_DATA}
72
+ {...props}
73
+ />
74
+ </div>
75
+ )
76
+ }
77
+
78
+ export default AdvancedTableSelectableRowsActions
@@ -0,0 +1 @@
1
+ Custom actions content can be rendered within the Actions Bar as shown in this doc example. The component passed to `actions` will be rendered on the right of the actionsBar. The `onRowSelectionChange` can then be used to attach the needed click events to those actions.
@@ -0,0 +1,53 @@
1
+ import React from "react"
2
+ import { AdvancedTable } from "playbook-ui"
3
+ import MOCK_DATA from "./advanced_table_mock_data_no_subrows.json"
4
+
5
+ const AdvancedTableSelectableRowsHeader = (props) => {
6
+ const columnDefinitions = [
7
+ {
8
+ accessor: "year",
9
+ label: "Year",
10
+ cellAccessors: ["quarter", "month", "day"],
11
+ },
12
+ {
13
+ accessor: "newEnrollments",
14
+ label: "New Enrollments",
15
+ },
16
+ {
17
+ accessor: "scheduledMeetings",
18
+ label: "Scheduled Meetings",
19
+ },
20
+ {
21
+ accessor: "attendanceRate",
22
+ label: "Attendance Rate",
23
+ },
24
+ {
25
+ accessor: "completedClasses",
26
+ label: "Completed Classes",
27
+ },
28
+ {
29
+ accessor: "classCompletionRate",
30
+ label: "Class Completion Rate",
31
+ },
32
+ {
33
+ accessor: "graduatedStudents",
34
+ label: "Graduated Students",
35
+ },
36
+ ]
37
+
38
+
39
+ return (
40
+ <div>
41
+ <AdvancedTable
42
+ columnDefinitions={columnDefinitions}
43
+ onRowSelectionChange={(selectedRows) => console.log(selectedRows)}
44
+ selectableRows
45
+ showActionsBar={false}
46
+ tableData={MOCK_DATA}
47
+ {...props}
48
+ />
49
+ </div>
50
+ )
51
+ }
52
+
53
+ export default AdvancedTableSelectableRowsHeader
@@ -0,0 +1 @@
1
+ `showActionsBar` is an optional prop that renders the header at the top showing the row count. This is set to `true` by default but can be toggled off by setting it to `false`
@@ -0,0 +1,52 @@
1
+ import React from "react"
2
+ import { AdvancedTable } from "playbook-ui"
3
+ import MOCK_DATA from "./advanced_table_mock_data_no_subrows.json"
4
+
5
+ const AdvancedTableSelectableRowsNoSubrows = (props) => {
6
+ const columnDefinitions = [
7
+ {
8
+ accessor: "year",
9
+ label: "Year",
10
+ cellAccessors: ["quarter", "month", "day"],
11
+ },
12
+ {
13
+ accessor: "newEnrollments",
14
+ label: "New Enrollments",
15
+ },
16
+ {
17
+ accessor: "scheduledMeetings",
18
+ label: "Scheduled Meetings",
19
+ },
20
+ {
21
+ accessor: "attendanceRate",
22
+ label: "Attendance Rate",
23
+ },
24
+ {
25
+ accessor: "completedClasses",
26
+ label: "Completed Classes",
27
+ },
28
+ {
29
+ accessor: "classCompletionRate",
30
+ label: "Class Completion Rate",
31
+ },
32
+ {
33
+ accessor: "graduatedStudents",
34
+ label: "Graduated Students",
35
+ },
36
+ ]
37
+
38
+
39
+ return (
40
+ <div>
41
+ <AdvancedTable
42
+ columnDefinitions={columnDefinitions}
43
+ onRowSelectionChange={(selectedRows) => console.log(selectedRows)}
44
+ selectableRows
45
+ tableData={MOCK_DATA}
46
+ {...props}
47
+ />
48
+ </div>
49
+ )
50
+ }
51
+
52
+ export default AdvancedTableSelectableRowsNoSubrows
@@ -0,0 +1 @@
1
+ `selectableRows` can also be used with tables without nested row data.
@@ -1,3 +1,3 @@
1
- `sortControl` is an optional prop that can be used to gain greater control over the sort state of the Advanced Table. Tanstack handles sort itself, however it does provide for a way to handle the state manually if needed. Usecases for this include needing to store the sort state so it persists on page reload, set an initial sort state, etc.
1
+ `sortControl` is an optional prop that can be used to gain greater control over the sort state of the Advanced Table. Tanstack handles sort itself, however it does provide for a way to handle the state manually if needed. Usecases for this include needing to store the sort state so it persists on page reload, set an initial sort state, etc.
2
2
 
3
- The sort state must be an object with a single key/value pair, with the key being "desc" and the value being a boolean. The default for sort directino is `desc: true`.
3
+ The sort state must be an object with a single key/value pair, with the key being "desc" and the value being a boolean. The default for sort direction is `desc: true`.
@@ -0,0 +1,42 @@
1
+ [
2
+ {
3
+ "year": "2021",
4
+ "id": "1",
5
+ "newEnrollments": "20",
6
+ "scheduledMeetings": "10",
7
+ "attendanceRate": "51%",
8
+ "completedClasses": "3",
9
+ "classCompletionRate": "33%",
10
+ "graduatedStudents": "19"
11
+ },
12
+ {
13
+ "year": "2022",
14
+ "id": "8",
15
+ "newEnrollments": "25",
16
+ "scheduledMeetings": "17",
17
+ "attendanceRate": "75%",
18
+ "completedClasses": "5",
19
+ "classCompletionRate": "45%",
20
+ "graduatedStudents": "32"
21
+ },
22
+ {
23
+ "year": "2023",
24
+ "id": "15",
25
+ "newEnrollments": "10",
26
+ "scheduledMeetings": "15",
27
+ "attendanceRate": "65%",
28
+ "completedClasses": "4",
29
+ "classCompletionRate": "49%",
30
+ "graduatedStudents": "29"
31
+ },
32
+ {
33
+ "year": "2024",
34
+ "id": "14",
35
+ "newEnrollments": "15",
36
+ "scheduledMeetings": "34",
37
+ "attendanceRate": "32%",
38
+ "completedClasses": "6",
39
+ "classCompletionRate": "67%",
40
+ "graduatedStudents": "65"
41
+ }
42
+ ]