playbook_ui_docs 14.12.0.pre.rc.11 → 14.13.0.pre.alpha.play1834depupdatesass6024
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.
- checksums.yaml +4 -4
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_loading.html.erb +33 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_loading_rails.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/{_advanced_table_loading.md → _advanced_table_loading_react.md} +2 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_no_subrows.jsx +50 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination.jsx +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination_with_props.jsx +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_responsive.html.erb +38 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows.jsx +60 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows.md +5 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_actions.jsx +78 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_actions.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_header.jsx +53 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_header.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows.jsx +52 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort_control.md +2 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props.jsx +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_react.md +3 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header.jsx +55 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header_react.md +3 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_mock_data_no_subrows.json +42 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/advanced_table_mock_data_with_id.json +299 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +8 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +7 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_badge_component_overlay.jsx +9 -3
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_circle_icon_component_overlay.jsx +6 -2
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_default.html.erb +2 -0
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_default.jsx +21 -0
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_from.html.erb +5 -0
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_from.jsx +45 -0
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_from.md +1 -0
- data/app/pb_kits/playbook/pb_copy_button/docs/example.yml +8 -0
- data/app/pb_kits/playbook/pb_copy_button/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +2 -1
- data/app/pb_kits/playbook/pb_date/docs/_date_unstyled.jsx +13 -5
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_turbo_frames.html.erb +13 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_turbo_frames_rails.md +3 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_rails.html.erb +99 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_rails.md +1 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards_rails.html.erb +1 -3
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards_rails.md +7 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_table.html.erb +61 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_table.md +1 -0
- data/app/pb_kits/playbook/pb_draggable/docs/example.yml +2 -5
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_behavior.jsx +38 -0
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_borders.jsx +3 -45
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_breakpoints.jsx +0 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_default.jsx +9 -16
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.jsx +44 -19
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.md +21 -3
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_overlay.jsx +16 -21
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_sizes.jsx +2 -19
- data/app/pb_kits/playbook/pb_drawer/docs/example.yml +2 -1
- data/app/pb_kits/playbook/pb_drawer/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subtle_variant.md +1 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_auto_close.html.erb +58 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_auto_close_rails.md +3 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_formatting.html.erb +11 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_formatting.jsx +22 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_formatting_rails.md +1 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_home_address_street_formatting_react.md +1 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_icon_button/docs/_icon_button_default.html.erb +3 -0
- data/app/pb_kits/playbook/pb_icon_button/docs/example.yml +7 -0
- data/app/pb_kits/playbook/pb_link/docs/_link_target.html.erb +15 -0
- data/app/pb_kits/playbook/pb_link/docs/_link_target.jsx +29 -0
- data/app/pb_kits/playbook/pb_link/docs/example.yml +5 -3
- data/app/pb_kits/playbook/pb_link/docs/index.js +2 -1
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_tooltip.html.erb +6 -6
- data/app/pb_kits/playbook/pb_radio/docs/_radio_custom_children.jsx +8 -3
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_default.jsx +4 -1
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_single_select.jsx +4 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_background_kit.html.erb +6 -9
- data/app/pb_kits/playbook/pb_table/docs/_table_with_background_kit.jsx +6 -9
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.html.erb +47 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_rails.md +2 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content.jsx +12 -8
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content_rails.html.erb +52 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content_rails.md +0 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows_rails.html.erb +52 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows_rails.md +3 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table_rails.html.erb +80 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table_rails.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/example.yml +4 -0
- data/app/pb_kits/playbook/pb_text_input/docs/_text_input_mask.html.erb +46 -0
- data/app/pb_kits/playbook/pb_text_input/docs/_text_input_mask_rails.md +3 -0
- data/app/pb_kits/playbook/pb_text_input/docs/example.yml +2 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_default.html.erb +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.html.erb +19 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.jsx +27 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.md +1 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_light_weight.html.erb +42 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_light_weight.jsx +59 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_light_weight.md +2 -0
- data/app/pb_kits/playbook/pb_user/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_user/docs/index.js +1 -0
- data/dist/playbook-doc.js +1 -1
- metadata +61 -5
- /data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/{_fixed_confirmation_toast_auto_close.md → _fixed_confirmation_toast_auto_close_react.md} +0 -0
- /data/app/pb_kits/playbook/pb_table/docs/{_table_with_collapsible.md → _table_with_collapsible_react.md} +0 -0
@@ -0,0 +1,299 @@
|
|
1
|
+
[
|
2
|
+
{
|
3
|
+
"year": "2021",
|
4
|
+
"id": "1",
|
5
|
+
"quarter": null,
|
6
|
+
"month": null,
|
7
|
+
"day": null,
|
8
|
+
"newEnrollments": "20",
|
9
|
+
"scheduledMeetings": "10",
|
10
|
+
"attendanceRate": "51%",
|
11
|
+
"completedClasses": "3",
|
12
|
+
"classCompletionRate": "33%",
|
13
|
+
"graduatedStudents": "19",
|
14
|
+
"children": [
|
15
|
+
{
|
16
|
+
"year": "2021",
|
17
|
+
"id": "2",
|
18
|
+
"quarter": "Q1",
|
19
|
+
"month": null,
|
20
|
+
"day": null,
|
21
|
+
"newEnrollments": "2",
|
22
|
+
"scheduledMeetings": "35",
|
23
|
+
"attendanceRate": "32%",
|
24
|
+
"completedClasses": "15",
|
25
|
+
"classCompletionRate": "52%",
|
26
|
+
"graduatedStudents": "36",
|
27
|
+
"children": [
|
28
|
+
{
|
29
|
+
"year": "2021",
|
30
|
+
"id": "3",
|
31
|
+
"quarter": "Q1",
|
32
|
+
"month": "January",
|
33
|
+
"day": null,
|
34
|
+
"newEnrollments": "16",
|
35
|
+
"scheduledMeetings": "20",
|
36
|
+
"attendanceRate": "11%",
|
37
|
+
"completedClasses": "13",
|
38
|
+
"classCompletionRate": "47%",
|
39
|
+
"graduatedStudents": "28",
|
40
|
+
"children": [
|
41
|
+
{
|
42
|
+
"year": "2021",
|
43
|
+
"id": "4",
|
44
|
+
"quarter": "Q1",
|
45
|
+
"month": "January",
|
46
|
+
"day": "10",
|
47
|
+
"newEnrollments": "34",
|
48
|
+
"scheduledMeetings": "28",
|
49
|
+
"attendanceRate": "97%",
|
50
|
+
"completedClasses": "20",
|
51
|
+
"classCompletionRate": "15%",
|
52
|
+
"graduatedStudents": "17"
|
53
|
+
},
|
54
|
+
{
|
55
|
+
"year": "2021",
|
56
|
+
"id": "5",
|
57
|
+
"quarter": "Q1",
|
58
|
+
"month": "January",
|
59
|
+
"day": "20",
|
60
|
+
"newEnrollments": "43",
|
61
|
+
"scheduledMeetings": "23",
|
62
|
+
"attendanceRate": "66%",
|
63
|
+
"completedClasses": "26",
|
64
|
+
"classCompletionRate": "47%",
|
65
|
+
"graduatedStudents": "9"
|
66
|
+
}
|
67
|
+
]
|
68
|
+
},
|
69
|
+
{
|
70
|
+
"year": "2021",
|
71
|
+
"id": "6",
|
72
|
+
"quarter": "Q1",
|
73
|
+
"month": "February",
|
74
|
+
"day": null,
|
75
|
+
"newEnrollments": "20",
|
76
|
+
"scheduledMeetings": "41",
|
77
|
+
"attendanceRate": "95%",
|
78
|
+
"completedClasses": "26",
|
79
|
+
"classCompletionRate": "83%",
|
80
|
+
"graduatedStudents": "43",
|
81
|
+
"children": [
|
82
|
+
{
|
83
|
+
"year": "2021",
|
84
|
+
"id": "7",
|
85
|
+
"quarter": "Q1",
|
86
|
+
"month": "February",
|
87
|
+
"day": "15",
|
88
|
+
"newEnrollments": "19",
|
89
|
+
"scheduledMeetings": "35",
|
90
|
+
"attendanceRate": "69%",
|
91
|
+
"completedClasses": "8",
|
92
|
+
"classCompletionRate": "75%",
|
93
|
+
"graduatedStudents": "23"
|
94
|
+
}
|
95
|
+
]
|
96
|
+
}
|
97
|
+
]
|
98
|
+
}
|
99
|
+
]
|
100
|
+
},
|
101
|
+
{
|
102
|
+
"year": "2022",
|
103
|
+
"id": "8",
|
104
|
+
"quarter": null,
|
105
|
+
"month": null,
|
106
|
+
"day": null,
|
107
|
+
"newEnrollments": "25",
|
108
|
+
"scheduledMeetings": "17",
|
109
|
+
"attendanceRate": "75%",
|
110
|
+
"completedClasses": "5",
|
111
|
+
"classCompletionRate": "45%",
|
112
|
+
"graduatedStudents": "32",
|
113
|
+
"children": [
|
114
|
+
{
|
115
|
+
"year": "2022",
|
116
|
+
"id": "9",
|
117
|
+
"quarter": "Q1",
|
118
|
+
"month": null,
|
119
|
+
"day": null,
|
120
|
+
"newEnrollments": "2",
|
121
|
+
"scheduledMeetings": "35",
|
122
|
+
"attendanceRate": "32%",
|
123
|
+
"completedClasses": "15",
|
124
|
+
"classCompletionRate": "52%",
|
125
|
+
"graduatedStudents": "36",
|
126
|
+
"children": [
|
127
|
+
{
|
128
|
+
"year": "2022",
|
129
|
+
"id": "10",
|
130
|
+
"quarter": "Q1",
|
131
|
+
"month": "January",
|
132
|
+
"day": null,
|
133
|
+
"newEnrollments": "16",
|
134
|
+
"scheduledMeetings": "20",
|
135
|
+
"attendanceRate": "11%",
|
136
|
+
"completedClasses": "13",
|
137
|
+
"classCompletionRate": "47%",
|
138
|
+
"graduatedStudents": "28",
|
139
|
+
"children": [
|
140
|
+
{
|
141
|
+
"year": "2022",
|
142
|
+
"id": "11",
|
143
|
+
"quarter": "Q1",
|
144
|
+
"month": "January",
|
145
|
+
"day": "15",
|
146
|
+
"newEnrollments": "34",
|
147
|
+
"scheduledMeetings": "28",
|
148
|
+
"attendanceRate": "97%",
|
149
|
+
"completedClasses": "20",
|
150
|
+
"classCompletionRate": "15%",
|
151
|
+
"graduatedStudents": "17"
|
152
|
+
},
|
153
|
+
{
|
154
|
+
"year": "2022",
|
155
|
+
"id": "12",
|
156
|
+
"quarter": "Q1",
|
157
|
+
"month": "January",
|
158
|
+
"day": "25",
|
159
|
+
"newEnrollments": "43",
|
160
|
+
"scheduledMeetings": "23",
|
161
|
+
"attendanceRate": "66%",
|
162
|
+
"completedClasses": "26",
|
163
|
+
"classCompletionRate": "47%",
|
164
|
+
"graduatedStudents": "9"
|
165
|
+
}
|
166
|
+
]
|
167
|
+
},
|
168
|
+
{
|
169
|
+
"year": "2022",
|
170
|
+
"id": "13",
|
171
|
+
"quarter": "Q1",
|
172
|
+
"month": "May",
|
173
|
+
"day": null,
|
174
|
+
"newEnrollments": "20",
|
175
|
+
"scheduledMeetings": "41",
|
176
|
+
"attendanceRate": "95%",
|
177
|
+
"completedClasses": "26",
|
178
|
+
"classCompletionRate": "83%",
|
179
|
+
"graduatedStudents": "43",
|
180
|
+
"children": [
|
181
|
+
{
|
182
|
+
"year": "2022",
|
183
|
+
"id": "14",
|
184
|
+
"quarter": "Q1",
|
185
|
+
"month": "May",
|
186
|
+
"day": "2",
|
187
|
+
"newEnrollments": "19",
|
188
|
+
"scheduledMeetings": "35",
|
189
|
+
"attendanceRate": "69%",
|
190
|
+
"completedClasses": "8",
|
191
|
+
"classCompletionRate": "75%",
|
192
|
+
"graduatedStudents": "23"
|
193
|
+
}
|
194
|
+
]
|
195
|
+
}
|
196
|
+
]
|
197
|
+
}
|
198
|
+
]
|
199
|
+
},
|
200
|
+
{
|
201
|
+
"year": "2023",
|
202
|
+
"id": "15",
|
203
|
+
"quarter": null,
|
204
|
+
"month": null,
|
205
|
+
"day": null,
|
206
|
+
"newEnrollments": "10",
|
207
|
+
"scheduledMeetings": "15",
|
208
|
+
"attendanceRate": "65%",
|
209
|
+
"completedClasses": "4",
|
210
|
+
"classCompletionRate": "49%",
|
211
|
+
"graduatedStudents": "29",
|
212
|
+
"children": [
|
213
|
+
{
|
214
|
+
"year": "2023",
|
215
|
+
"id": "16",
|
216
|
+
"quarter": "Q1",
|
217
|
+
"month": null,
|
218
|
+
"day": null,
|
219
|
+
"newEnrollments": "2",
|
220
|
+
"scheduledMeetings": "35",
|
221
|
+
"attendanceRate": "32%",
|
222
|
+
"completedClasses": "15",
|
223
|
+
"classCompletionRate": "52%",
|
224
|
+
"graduatedStudents": "36",
|
225
|
+
"children": [
|
226
|
+
{
|
227
|
+
"year": "2023",
|
228
|
+
"id": "17",
|
229
|
+
"quarter": "Q1",
|
230
|
+
"month": "March",
|
231
|
+
"day": null,
|
232
|
+
"newEnrollments": "16",
|
233
|
+
"scheduledMeetings": "20",
|
234
|
+
"attendanceRate": "11%",
|
235
|
+
"completedClasses": "13",
|
236
|
+
"classCompletionRate": "47%",
|
237
|
+
"graduatedStudents": "28",
|
238
|
+
"children": [
|
239
|
+
{
|
240
|
+
"year": "2023",
|
241
|
+
"id": "18",
|
242
|
+
"quarter": "Q1",
|
243
|
+
"month": "March",
|
244
|
+
"day": "10",
|
245
|
+
"newEnrollments": "34",
|
246
|
+
"scheduledMeetings": "28",
|
247
|
+
"attendanceRate": "97%",
|
248
|
+
"completedClasses": "20",
|
249
|
+
"classCompletionRate": "15%",
|
250
|
+
"graduatedStudents": "17"
|
251
|
+
},
|
252
|
+
{
|
253
|
+
"year": "2023",
|
254
|
+
"id": "19",
|
255
|
+
"quarter": "Q1",
|
256
|
+
"month": "March",
|
257
|
+
"day": "11",
|
258
|
+
"newEnrollments": "43",
|
259
|
+
"scheduledMeetings": "23",
|
260
|
+
"attendanceRate": "66%",
|
261
|
+
"completedClasses": "26",
|
262
|
+
"classCompletionRate": "47%",
|
263
|
+
"graduatedStudents": "9"
|
264
|
+
}
|
265
|
+
]
|
266
|
+
},
|
267
|
+
{
|
268
|
+
"year": "2023",
|
269
|
+
"id": "20",
|
270
|
+
"quarter": "Q1",
|
271
|
+
"month": "April",
|
272
|
+
"day": null,
|
273
|
+
"newEnrollments": "20",
|
274
|
+
"scheduledMeetings": "41",
|
275
|
+
"attendanceRate": "95%",
|
276
|
+
"completedClasses": "26",
|
277
|
+
"classCompletionRate": "83%",
|
278
|
+
"graduatedStudents": "43",
|
279
|
+
"children": [
|
280
|
+
{
|
281
|
+
"year": "2023",
|
282
|
+
"id": "21",
|
283
|
+
"quarter": "Q1",
|
284
|
+
"month": "April",
|
285
|
+
"day": "15",
|
286
|
+
"newEnrollments": "19",
|
287
|
+
"scheduledMeetings": "35",
|
288
|
+
"attendanceRate": "69%",
|
289
|
+
"completedClasses": "8",
|
290
|
+
"classCompletionRate": "75%",
|
291
|
+
"graduatedStudents": "23"
|
292
|
+
}
|
293
|
+
]
|
294
|
+
}
|
295
|
+
]
|
296
|
+
}
|
297
|
+
]
|
298
|
+
}
|
299
|
+
]
|
@@ -1,10 +1,12 @@
|
|
1
1
|
examples:
|
2
2
|
rails:
|
3
3
|
- advanced_table_beta: Default (Required Props)
|
4
|
+
- advanced_table_loading: Loading State
|
4
5
|
- advanced_table_beta_subrow_headers: SubRow Headers
|
5
6
|
- advanced_table_collapsible_trail_rails: Collapsible Trail
|
6
7
|
- advanced_table_table_props: Table Props
|
7
8
|
- advanced_table_beta_sort: Enable Sorting
|
9
|
+
- advanced_table_responsive: Responsive Tables
|
8
10
|
- advanced_table_custom_cell_rails: Custom Components for Cells
|
9
11
|
- advanced_table_column_headers: Multi-Header Columns
|
10
12
|
- advanced_table_column_headers_multiple: Multi-Header Columns (Multiple Levels)
|
@@ -20,6 +22,7 @@ examples:
|
|
20
22
|
- advanced_table_collapsible_trail: Collapsible Trail
|
21
23
|
- advanced_table_table_options: Table Options
|
22
24
|
- advanced_table_table_props: Table Props
|
25
|
+
- advanced_table_table_props_sticky_header: Table Props Sticky Header
|
23
26
|
- advanced_table_inline_row_loading: Inline Row Loading
|
24
27
|
- advanced_table_responsive: Responsive Tables
|
25
28
|
- advanced_table_custom_cell: Custom Components for Cells
|
@@ -27,3 +30,8 @@ examples:
|
|
27
30
|
- advanced_table_pagination_with_props: Pagination Props
|
28
31
|
- advanced_table_column_headers: Multi-Header Columns
|
29
32
|
- advanced_table_column_headers_multiple: Multi-Header Columns (Multiple Levels)
|
33
|
+
# - advanced_table_no_subrows: Table with No Subrows
|
34
|
+
- advanced_table_selectable_rows: Selectable Rows
|
35
|
+
- advanced_table_selectable_rows_no_subrows: Selectable Rows (No Subrows)
|
36
|
+
- advanced_table_selectable_rows_actions: Selectable Rows (With Actions)
|
37
|
+
- advanced_table_selectable_rows_header: Selectable Rows (No Actions Bar)
|
@@ -13,4 +13,10 @@ export { default as AdvancedTableCustomCell } from './_advanced_table_custom_cel
|
|
13
13
|
export { default as AdvancedTablePagination } from './_advanced_table_pagination.jsx'
|
14
14
|
export { default as AdvancedTablePaginationWithProps } from './_advanced_table_pagination_with_props.jsx'
|
15
15
|
export { default as AdvancedTableColumnHeaders } from './_advanced_table_column_headers.jsx'
|
16
|
-
export { default as AdvancedTableColumnHeadersMultiple } from './_advanced_table_column_headers_multiple.jsx'
|
16
|
+
export { default as AdvancedTableColumnHeadersMultiple } from './_advanced_table_column_headers_multiple.jsx'
|
17
|
+
export { default as AdvancedTableSelectableRows } from './_advanced_table_selectable_rows.jsx'
|
18
|
+
export { default as AdvancedTableSelectableRowsNoSubrows } from './_advanced_table_selectable_rows_no_subrows.jsx'
|
19
|
+
export { default as AdvancedTableNoSubrows } from './_advanced_table_no_subrows.jsx'
|
20
|
+
export { default as AdvancedTableSelectableRowsHeader } from './_advanced_table_selectable_rows_header.jsx'
|
21
|
+
export { default as AdvancedTableSelectableRowsActions } from './_advanced_table_selectable_rows_actions.jsx'
|
22
|
+
export { default as AdvancedTableTablePropsStickyHeader } from './_advanced_table_table_props_sticky_header.jsx'
|
@@ -1,18 +1,19 @@
|
|
1
1
|
import React from "react";
|
2
2
|
import { Avatar } from 'playbook-ui'
|
3
3
|
|
4
|
-
const AvatarBadgeComponentOverlay = () => {
|
4
|
+
const AvatarBadgeComponentOverlay = (props) => {
|
5
5
|
return (
|
6
6
|
<div>
|
7
7
|
<Avatar
|
8
8
|
componentOverlay={{
|
9
9
|
component: "badge",
|
10
10
|
placement: "bottom-right",
|
11
|
-
text: "12"
|
11
|
+
text: "12",
|
12
12
|
}}
|
13
13
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
14
14
|
marginBottom="sm"
|
15
15
|
size="sm"
|
16
|
+
{...props}
|
16
17
|
/>
|
17
18
|
|
18
19
|
<Avatar
|
@@ -24,6 +25,8 @@ const AvatarBadgeComponentOverlay = () => {
|
|
24
25
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
25
26
|
marginBottom="sm"
|
26
27
|
size="md"
|
28
|
+
{...props}
|
29
|
+
|
27
30
|
/>
|
28
31
|
|
29
32
|
<Avatar
|
@@ -36,6 +39,8 @@ const AvatarBadgeComponentOverlay = () => {
|
|
36
39
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
37
40
|
marginBottom="sm"
|
38
41
|
size="lg"
|
42
|
+
{...props}
|
43
|
+
|
39
44
|
/>
|
40
45
|
|
41
46
|
<Avatar
|
@@ -48,7 +53,8 @@ const AvatarBadgeComponentOverlay = () => {
|
|
48
53
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
49
54
|
marginBottom="sm"
|
50
55
|
size="xl"
|
51
|
-
|
56
|
+
{...props}
|
57
|
+
/>
|
52
58
|
</div>
|
53
59
|
)
|
54
60
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import React from "react";
|
2
2
|
import { Avatar } from 'playbook-ui'
|
3
3
|
|
4
|
-
const AvatarCircleIconComponentOverlay = () => {
|
4
|
+
const AvatarCircleIconComponentOverlay = (props) => {
|
5
5
|
return (
|
6
6
|
<div>
|
7
7
|
<Avatar
|
@@ -14,6 +14,7 @@ const AvatarCircleIconComponentOverlay = () => {
|
|
14
14
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
15
15
|
marginBottom="sm"
|
16
16
|
size="sm"
|
17
|
+
{...props}
|
17
18
|
/>
|
18
19
|
|
19
20
|
<Avatar
|
@@ -26,6 +27,7 @@ const AvatarCircleIconComponentOverlay = () => {
|
|
26
27
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
27
28
|
marginBottom="sm"
|
28
29
|
size="md"
|
30
|
+
{...props}
|
29
31
|
/>
|
30
32
|
|
31
33
|
<Avatar
|
@@ -38,6 +40,7 @@ const AvatarCircleIconComponentOverlay = () => {
|
|
38
40
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
39
41
|
marginBottom="sm"
|
40
42
|
size="lg"
|
43
|
+
{...props}
|
41
44
|
/>
|
42
45
|
|
43
46
|
<Avatar
|
@@ -50,7 +53,8 @@ const AvatarCircleIconComponentOverlay = () => {
|
|
50
53
|
imageUrl="https://randomuser.me/api/portraits/men/44.jpg"
|
51
54
|
marginBottom="sm"
|
52
55
|
size="xl"
|
53
|
-
|
56
|
+
{...props}
|
57
|
+
/>
|
54
58
|
</div>
|
55
59
|
)
|
56
60
|
}
|
@@ -0,0 +1,2 @@
|
|
1
|
+
<%= pb_rails("copy_button", props: { id: "default-copy-button", text: "Copy Text", value: "Playbook makes it easy to support bleeding edge, or legacy systems. Use Playbook’s 200+ components and end-to-end design language to create simple, intuitive and beautiful experiences with ease." } ) %>
|
2
|
+
<%= pb_rails("textarea", props: { margin_top: "xs", placeholder: "Copy and paste here" }) %>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import { CopyButton, Textarea } from 'playbook-ui'
|
3
|
+
|
4
|
+
const CopyButtonDefault = (props) => (
|
5
|
+
<div>
|
6
|
+
<CopyButton
|
7
|
+
{...props}
|
8
|
+
text="Copy Text"
|
9
|
+
tooltipPlacement="right"
|
10
|
+
tooltipText="Text copied!"
|
11
|
+
value="Playbook makes it easy to support bleeding edge, or legacy systems. Use Playbook’s 200+ components and end-to-end design language to create simple, intuitive and beautiful experiences with ease."
|
12
|
+
/>
|
13
|
+
|
14
|
+
<Textarea
|
15
|
+
{...props}
|
16
|
+
placeholder="Copy and paste here"
|
17
|
+
/>
|
18
|
+
</div>
|
19
|
+
)
|
20
|
+
|
21
|
+
export default CopyButtonDefault
|
@@ -0,0 +1,5 @@
|
|
1
|
+
<%= pb_rails("body", props: { id: "body", text: "Copy this body text!"}) %>
|
2
|
+
<%= pb_rails("copy_button", props: { text: "Copy Body text", from: "body", id: "copy-body-button" }) %>
|
3
|
+
<%= pb_rails("text_input", props: { margin_top: "xs", placeholder: "Copy and paste here" }) %>
|
4
|
+
<%= pb_rails("copy_button", props: { text: "Copy Text Input", from: "copy-input", id: "copy-input-button" }) %>
|
5
|
+
<%= pb_rails("text_input", props: { margin_top: "xs", id: "copy-input" , value: "Copy and paste here" }) %>
|
@@ -0,0 +1,45 @@
|
|
1
|
+
import React, { useState } from 'react'
|
2
|
+
import { CopyButton, Body, TextInput, Textarea } from 'playbook-ui'
|
3
|
+
|
4
|
+
const CopyButtonFrom = (props) => {
|
5
|
+
const [text, setText] = useState("Copy this text input text")
|
6
|
+
|
7
|
+
const handleChange = (event) => {
|
8
|
+
setText(event.target.value);
|
9
|
+
}
|
10
|
+
|
11
|
+
return (<div>
|
12
|
+
<Body id="body">Copy this body text!</Body>
|
13
|
+
<CopyButton
|
14
|
+
{...props}
|
15
|
+
from="body"
|
16
|
+
marginBottom="sm"
|
17
|
+
text="Copy Body text"
|
18
|
+
tooltipPlacement="right"
|
19
|
+
tooltipText="Body text copied!"
|
20
|
+
/>
|
21
|
+
|
22
|
+
<TextInput
|
23
|
+
{...props}
|
24
|
+
id="textinput"
|
25
|
+
onChange={handleChange}
|
26
|
+
value={text}
|
27
|
+
/>
|
28
|
+
<CopyButton
|
29
|
+
{...props}
|
30
|
+
from="textinput"
|
31
|
+
marginBottom="sm"
|
32
|
+
text="Copy Text Input"
|
33
|
+
tooltipPlacement="right"
|
34
|
+
tooltipText="Text input copied!"
|
35
|
+
/>
|
36
|
+
|
37
|
+
<Textarea
|
38
|
+
{...props}
|
39
|
+
placeholder="Copy and paste here"
|
40
|
+
/>
|
41
|
+
</div>
|
42
|
+
)
|
43
|
+
}
|
44
|
+
|
45
|
+
export default CopyButtonFrom
|
@@ -0,0 +1 @@
|
|
1
|
+
Provide an element's ID as the `from` parameter, and its text will be copied. If the element is an input, its `value` will be copied; otherwise, the `innerText` will be used. Additionally, if a `value` prop is provided, it will override the content from the `from` element and be copied instead.
|
@@ -18,7 +18,7 @@ const DateDefault = (props) => {
|
|
18
18
|
value={"2012-08-03"}
|
19
19
|
{...props}
|
20
20
|
/>
|
21
|
-
<Caption>{"(Hyphenated Date)"}</Caption>
|
21
|
+
<Caption {...props}>{"(Hyphenated Date)"}</Caption>
|
22
22
|
</div>
|
23
23
|
|
24
24
|
<br />
|
@@ -56,6 +56,7 @@ const DateDefault = (props) => {
|
|
56
56
|
<Title
|
57
57
|
size={4}
|
58
58
|
text={"(Hyphenated Date)"}
|
59
|
+
{...props}
|
59
60
|
/>
|
60
61
|
</div>
|
61
62
|
|
@@ -4,7 +4,8 @@ import { Caption, Date as FormattedDate, Title } from 'playbook-ui'
|
|
4
4
|
const DateUnstyled = (props) => {
|
5
5
|
return (
|
6
6
|
<>
|
7
|
-
<Caption
|
7
|
+
<Caption {...props}
|
8
|
+
size="xs"
|
8
9
|
text="Basic unstyled example"
|
9
10
|
/>
|
10
11
|
<FormattedDate
|
@@ -15,10 +16,14 @@ const DateUnstyled = (props) => {
|
|
15
16
|
|
16
17
|
<br />
|
17
18
|
|
18
|
-
<Caption
|
19
|
+
<Caption {...props}
|
20
|
+
|
21
|
+
size="xs"
|
19
22
|
text="Example with wrapping typography kit"
|
20
23
|
/>
|
21
|
-
<Title
|
24
|
+
<Title {...props}
|
25
|
+
size={1}
|
26
|
+
>
|
22
27
|
<FormattedDate
|
23
28
|
unstyled
|
24
29
|
value={new Date('25 Dec 1995')}
|
@@ -28,10 +33,13 @@ const DateUnstyled = (props) => {
|
|
28
33
|
|
29
34
|
<br />
|
30
35
|
|
31
|
-
<Caption
|
36
|
+
<Caption {...props}
|
37
|
+
size="xs"
|
32
38
|
text="Example with icon + subcaption"
|
33
39
|
/>
|
34
|
-
<Caption
|
40
|
+
<Caption {...props}
|
41
|
+
size="xs"
|
42
|
+
>
|
35
43
|
<FormattedDate
|
36
44
|
showDayOfWeek
|
37
45
|
showIcon
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<%= pb_rails("date_picker", props: { picker_id: "date-picker-turbo-frames", custom_event_type: "datePickerLoader" }) %>
|
2
|
+
<%= pb_rails("button", props: { id: "date-picker-loader", text: "Click Event Simulation" }) %>
|
3
|
+
|
4
|
+
<script>
|
5
|
+
document.getElementById("date-picker-loader").addEventListener("click", () => {
|
6
|
+
window.document.dispatchEvent(
|
7
|
+
new CustomEvent("datePickerLoader", {
|
8
|
+
bubbles: true,
|
9
|
+
})
|
10
|
+
)
|
11
|
+
console.log("Event 'datePickerLoader' dispatched - in a real implementation, this event would trigger the date picker's reinitialization through the custom_event_type prop connection")
|
12
|
+
})
|
13
|
+
</script>
|
@@ -0,0 +1,3 @@
|
|
1
|
+
The `custom_event_type` prop allows you to specify a custom event that will trigger the date picker's initialization, in addition to the default initialization on `DOMContentLoaded`. This is particularly useful in dynamic contexts like Turbo Frame updates where you need to reinitialize the date picker after new content loads. For Turbo integration, use `custom_event_type: "turbo:before-render"` to ensure the date picker properly reinitializes after Turbo navigation events.
|
2
|
+
|
3
|
+
In this example, we demonstrate the setup pattern by connecting a button to dispatch a "datePickerLoader" event - while the date picker's event listener is properly configured through the `custom_event_type` prop, this demo only logs the event dispatch to the console to illustrate the connection structure.
|