playbook_ui_docs 16.9.0 → 16.10.0.pre.alpha.PLAY3053advancedtablebottompinnedrowsreact17469
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_pinned_rows.jsx +19 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pinned_rows_react.md +2 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_row_styling.html.erb +4 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_row_styling.jsx +6 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_row_styling_rails.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_row_styling_react.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header.html.erb +36 -44
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header.jsx +10 -19
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header_rails.md +0 -4
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header_react.md +3 -5
- data/app/pb_kits/playbook/pb_advanced_table/docs/_playground.json +2 -8
- data/app/pb_kits/playbook/pb_advanced_table/docs/_playground.overrides.json +1 -8
- data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +0 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +0 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_asc.html.erb +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_asc.jsx +15 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_year_asc.md +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_playground.json +1 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_event_listeners_rails.md +1 -1
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_independent_containers.html.erb +35 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_independent_containers_rails.md +8 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_rails.md +3 -1
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers_react.md +1 -1
- data/app/pb_kits/playbook/pb_draggable/docs/_playground.json +260 -19
- data/app/pb_kits/playbook/pb_draggable/docs/_playground.overrides.json +258 -13
- data/app/pb_kits/playbook/pb_draggable/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_custom_display_disabled_option.html.erb +93 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_custom_display_disabled_option.jsx +127 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_custom_display_disabled_option.md +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_disabled.html.erb +10 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_disabled.jsx +37 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_disabled_option.html.erb +10 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_disabled_option.jsx +37 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_disabled_option.md +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_playground.json +150 -237
- data/app/pb_kits/playbook/pb_dropdown/docs/_playground.overrides.json +58 -74
- data/app/pb_kits/playbook/pb_dropdown/docs/example.yml +6 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_remove_replace.html.erb +66 -0
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_remove_replace.jsx +53 -0
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_remove_replace.md +5 -0
- data/app/pb_kits/playbook/pb_file_upload/docs/_playground.json +2 -1
- data/app/pb_kits/playbook/pb_file_upload/docs/example.yml +3 -1
- data/app/pb_kits/playbook/pb_file_upload/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_filter/docs/_filter_interactive.html.erb +116 -0
- data/app/pb_kits/playbook/pb_filter/docs/_filter_interactive.md +12 -0
- data/app/pb_kits/playbook/pb_filter/docs/_filter_interactive_react.jsx +153 -0
- data/app/pb_kits/playbook/pb_filter/docs/_filter_interactive_react.md +10 -0
- data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.html.erb +1 -1
- data/app/pb_kits/playbook/pb_filter/docs/_playground.json +308 -5
- data/app/pb_kits/playbook/pb_filter/docs/_playground.overrides.json +312 -0
- data/app/pb_kits/playbook/pb_filter/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_filter/docs/index.js +2 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_playground.json +210 -14
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_playground.overrides.json +231 -0
- data/app/pb_kits/playbook/pb_flex/docs/_playground.json +297 -38
- data/app/pb_kits/playbook/pb_flex/docs/_playground.overrides.json +300 -40
- data/app/pb_kits/playbook/pb_form/docs/_form_with_required_indicator.html.erb +20 -19
- data/app/pb_kits/playbook/pb_form/docs/_playground.json +1 -13
- data/app/pb_kits/playbook/pb_form_group/docs/_playground.json +82 -5
- data/app/pb_kits/playbook/pb_form_group/docs/_playground.overrides.json +91 -0
- data/app/pb_kits/playbook/pb_form_pill/docs/_playground.json +155 -14
- data/app/pb_kits/playbook/pb_form_pill/docs/_playground.overrides.json +147 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_description.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_content_padding.jsx +68 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_content_padding.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_custom_trigger.jsx +71 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_custom_trigger.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_default.html.erb +3 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_default.jsx +63 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_default.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_header_text_styling.jsx +68 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_header_text_styling.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_sticky_header.jsx +68 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_sticky_header.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_table_and_filter.jsx +149 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_full_screen_table_and_filter.md +1 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_playground.json +155 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/_playground.overrides.json +137 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/example.yml +14 -0
- data/app/pb_kits/playbook/pb_full_screen/docs/index.js +6 -0
- data/app/pb_kits/playbook/pb_hashtag/docs/_playground.json +72 -11
- data/app/pb_kits/playbook/pb_hashtag/docs/_playground.overrides.json +75 -0
- data/app/pb_kits/playbook/pb_highlight/docs/_playground.json +75 -4
- data/app/pb_kits/playbook/pb_highlight/docs/_playground.overrides.json +75 -0
- data/app/pb_kits/playbook/pb_home_address_street/docs/_playground.json +138 -12
- data/app/pb_kits/playbook/pb_home_address_street/docs/_playground.overrides.json +162 -0
- data/app/pb_kits/playbook/pb_icon/docs/_icon_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/docs/_playground.json +66 -41
- data/app/pb_kits/playbook/pb_icon/docs/_playground.overrides.json +85 -27
- data/app/pb_kits/playbook/pb_icon_button/docs/_playground.json +111 -9
- data/app/pb_kits/playbook/pb_icon_button/docs/_playground.overrides.json +131 -0
- data/app/pb_kits/playbook/pb_icon_circle/docs/_playground.json +92 -7
- data/app/pb_kits/playbook/pb_icon_circle/docs/_playground.overrides.json +108 -0
- data/app/pb_kits/playbook/pb_icon_stat_value/docs/_playground.json +32 -17
- data/app/pb_kits/playbook/pb_icon_stat_value/docs/_playground.overrides.json +81 -8
- data/app/pb_kits/playbook/pb_icon_value/docs/_playground.json +28 -18
- data/app/pb_kits/playbook/pb_icon_value/docs/_playground.overrides.json +58 -9
- data/app/pb_kits/playbook/pb_image/docs/_playground.json +124 -47
- data/app/pb_kits/playbook/pb_image/docs/_playground.overrides.json +122 -47
- data/app/pb_kits/playbook/pb_label_pill/docs/_playground.json +68 -6
- data/app/pb_kits/playbook/pb_label_pill/docs/_playground.overrides.json +85 -0
- data/app/pb_kits/playbook/pb_label_value/docs/_playground.json +59 -36
- data/app/pb_kits/playbook/pb_label_value/docs/_playground.overrides.json +101 -30
- data/app/pb_kits/playbook/pb_layout/docs/_playground.json +216 -10
- data/app/pb_kits/playbook/pb_layout/docs/_playground.overrides.json +188 -0
- data/app/pb_kits/playbook/pb_legend/docs/_playground.json +60 -7
- data/app/pb_kits/playbook/pb_legend/docs/_playground.overrides.json +77 -0
- data/app/pb_kits/playbook/pb_list/docs/_playground.json +165 -17
- data/app/pb_kits/playbook/pb_list/docs/_playground.overrides.json +191 -0
- data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_color.html.erb +21 -0
- data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_color.jsx +55 -0
- data/app/pb_kits/playbook/pb_loading_inline/docs/_loading_inline_color.md +1 -0
- data/app/pb_kits/playbook/pb_loading_inline/docs/_playground.json +28 -1
- data/app/pb_kits/playbook/pb_loading_inline/docs/_playground.overrides.json +27 -1
- data/app/pb_kits/playbook/pb_loading_inline/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_loading_inline/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_map/docs/_playground.json +164 -7
- data/app/pb_kits/playbook/pb_map/docs/_playground.overrides.json +180 -0
- data/app/pb_kits/playbook/pb_message/docs/_playground.json +114 -8
- data/app/pb_kits/playbook/pb_message/docs/_playground.overrides.json +144 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_playground.json +310 -61
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_playground.overrides.json +327 -44
- data/app/pb_kits/playbook/pb_multiple_users/docs/_playground.json +35 -6
- data/app/pb_kits/playbook/pb_multiple_users/docs/_playground.overrides.json +35 -6
- data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/_playground.json +32 -21
- data/app/pb_kits/playbook/pb_multiple_users_stacked/docs/_playground.overrides.json +32 -21
- data/app/pb_kits/playbook/pb_nav/docs/_playground.json +546 -18
- data/app/pb_kits/playbook/pb_nav/docs/_playground.overrides.json +561 -14
- data/app/pb_kits/playbook/pb_online_status/docs/_playground.json +18 -23
- data/app/pb_kits/playbook/pb_online_status/docs/_playground.overrides.json +18 -14
- data/app/pb_kits/playbook/pb_overlay/docs/_playground.json +133 -14
- data/app/pb_kits/playbook/pb_overlay/docs/_playground.overrides.json +154 -0
- data/app/pb_kits/playbook/pb_pagination/docs/_playground.json +35 -14
- data/app/pb_kits/playbook/pb_pagination/docs/_playground.overrides.json +35 -14
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_breached.html.erb +1 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_common.html.erb +1 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_meter_settings.html.erb +5 -5
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_strength_change.html.erb +1 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_playground.json +129 -14
- data/app/pb_kits/playbook/pb_passphrase/docs/_playground.overrides.json +148 -0
- data/app/pb_kits/playbook/pb_pb_bar_graph/docs/_playground.json +378 -4
- data/app/pb_kits/playbook/pb_pb_bar_graph/docs/_playground.overrides.json +245 -0
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_playground.json +215 -4
- data/app/pb_kits/playbook/pb_pb_circle_chart/docs/_playground.overrides.json +224 -0
- data/app/pb_kits/playbook/pb_pb_gauge_chart/docs/_playground.json +149 -4
- data/app/pb_kits/playbook/pb_pb_gauge_chart/docs/_playground.overrides.json +162 -0
- data/app/pb_kits/playbook/pb_pb_line_graph/docs/_playground.json +392 -4
- data/app/pb_kits/playbook/pb_pb_line_graph/docs/_playground.overrides.json +212 -0
- data/app/pb_kits/playbook/pb_person/docs/_playground.json +27 -11
- data/app/pb_kits/playbook/pb_person/docs/_playground.overrides.json +34 -9
- data/app/pb_kits/playbook/pb_person_contact/docs/_playground.json +72 -21
- data/app/pb_kits/playbook/pb_person_contact/docs/_playground.overrides.json +71 -21
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_playground.json +179 -21
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_playground.overrides.json +180 -0
- data/app/pb_kits/playbook/pb_pill/docs/_playground.json +16 -49
- data/app/pb_kits/playbook/pb_pill/docs/_playground.overrides.json +33 -30
- data/app/pb_kits/playbook/pb_popover/docs/_playground.json +155 -46
- data/app/pb_kits/playbook/pb_popover/docs/_playground.overrides.json +162 -30
- data/app/pb_kits/playbook/pb_popover/docs/_popover_list.jsx +9 -11
- data/app/pb_kits/playbook/pb_progress_pills/docs/_playground.json +26 -13
- data/app/pb_kits/playbook/pb_progress_pills/docs/_playground.overrides.json +24 -6
- data/app/pb_kits/playbook/pb_progress_simple/docs/_playground.json +50 -17
- data/app/pb_kits/playbook/pb_progress_simple/docs/_playground.overrides.json +41 -7
- data/app/pb_kits/playbook/pb_progress_step/docs/_playground.json +197 -10
- data/app/pb_kits/playbook/pb_progress_step/docs/_playground.overrides.json +189 -0
- data/app/pb_kits/playbook/pb_radio/docs/_playground.json +80 -6
- data/app/pb_kits/playbook/pb_radio/docs/_playground.overrides.json +82 -3
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_playground.json +152 -22
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_playground.overrides.json +153 -0
- data/app/pb_kits/playbook/pb_select/docs/_playground.json +65 -19
- data/app/pb_kits/playbook/pb_select/docs/_playground.overrides.json +54 -14
- data/app/pb_kits/playbook/pb_selectable_card/docs/_playground.json +75 -82
- data/app/pb_kits/playbook/pb_selectable_card/docs/_playground.overrides.json +76 -76
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_playground.json +105 -15
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_playground.overrides.json +106 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_playground.json +37 -21
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_playground.overrides.json +35 -18
- data/app/pb_kits/playbook/pb_selectable_list/docs/_playground.json +174 -12
- data/app/pb_kits/playbook/pb_selectable_list/docs/_playground.overrides.json +162 -10
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_playground.json +68 -6
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_playground.overrides.json +80 -0
- data/app/pb_kits/playbook/pb_source/docs/_playground.json +67 -6
- data/app/pb_kits/playbook/pb_source/docs/_playground.overrides.json +80 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_playground.json +28 -53
- data/app/pb_kits/playbook/pb_star_rating/docs/_playground.overrides.json +33 -32
- data/app/pb_kits/playbook/pb_stat_change/docs/_playground.json +15 -9
- data/app/pb_kits/playbook/pb_stat_change/docs/_playground.overrides.json +15 -5
- data/app/pb_kits/playbook/pb_stat_value/docs/_playground.json +19 -9
- data/app/pb_kits/playbook/pb_stat_value/docs/_playground.overrides.json +18 -7
- data/app/pb_kits/playbook/pb_table/docs/_playground.json +223 -21
- data/app/pb_kits/playbook/pb_table/docs/_playground.overrides.json +176 -0
- data/app/pb_kits/playbook/pb_text_input/docs/_playground.json +44 -5
- data/app/pb_kits/playbook/pb_text_input/docs/_playground.overrides.json +39 -3
- data/app/pb_kits/playbook/pb_textarea/docs/_playground.json +35 -3
- data/app/pb_kits/playbook/pb_textarea/docs/_playground.overrides.json +28 -3
- data/app/pb_kits/playbook/pb_time/docs/_playground.json +28 -14
- data/app/pb_kits/playbook/pb_time/docs/_playground.overrides.json +26 -13
- data/app/pb_kits/playbook/pb_time_picker/docs/_playground.json +36 -30
- data/app/pb_kits/playbook/pb_time_picker/docs/_playground.overrides.json +31 -26
- data/app/pb_kits/playbook/pb_time_range_inline/docs/_playground.json +63 -9
- data/app/pb_kits/playbook/pb_time_range_inline/docs/_playground.overrides.json +69 -0
- data/app/pb_kits/playbook/pb_time_stacked/docs/_playground.json +30 -9
- data/app/pb_kits/playbook/pb_time_stacked/docs/_playground.overrides.json +30 -9
- data/app/pb_kits/playbook/pb_timeline/docs/_playground.json +178 -6
- data/app/pb_kits/playbook/pb_timeline/docs/_playground.overrides.json +165 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/_playground.json +36 -21
- data/app/pb_kits/playbook/pb_timestamp/docs/_playground.overrides.json +35 -20
- data/app/pb_kits/playbook/pb_toggle/docs/_playground.json +24 -13
- data/app/pb_kits/playbook/pb_toggle/docs/_playground.overrides.json +20 -12
- data/app/pb_kits/playbook/pb_tooltip/docs/_playground.json +42 -23
- data/app/pb_kits/playbook/pb_tooltip/docs/_playground.overrides.json +35 -15
- data/app/pb_kits/playbook/pb_typeahead/docs/_playground.json +124 -44
- data/app/pb_kits/playbook/pb_typeahead/docs/_playground.overrides.json +98 -31
- data/app/pb_kits/playbook/pb_user/docs/_playground.json +33 -15
- data/app/pb_kits/playbook/pb_user/docs/_playground.overrides.json +32 -15
- data/app/pb_kits/playbook/pb_user_badge/docs/_playground.json +26 -12
- data/app/pb_kits/playbook/pb_user_badge/docs/_playground.overrides.json +26 -9
- data/app/pb_kits/playbook/pb_weekday_stacked/docs/_playground.json +32 -5
- data/app/pb_kits/playbook/pb_weekday_stacked/docs/_playground.overrides.json +30 -4
- metadata +73 -4
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_fullscreen.jsx +0 -92
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_fullscreen.md +0 -3
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"template": "<FormGroup{{props}}>\n{{children}}\n</FormGroup>",
|
|
3
|
+
"wrapper": "const FormGroupPlayground = () => {\n const [formFields, setFormFields] = useState({\n firstName: \"Jane\",\n middleInitial: \"Q\",\n lastName: \"Doe\",\n search: \"\",\n eventName: \"Planning session\",\n animal: \"cat\"\n })\n\n const handleFieldChange = ({ target }) => {\n setFormFields({ ...formFields, [target.name]: target.value })\n }\n\n const handleAnimalChange = ({ target }) => {\n setFormFields({ ...formFields, animal: target.value })\n }\n\n return {{component}}\n}\n\n<FormGroupPlayground />",
|
|
4
|
+
"externalImports": ["import React, { useState } from 'react'"],
|
|
5
|
+
"children": {
|
|
6
|
+
"editable": true,
|
|
7
|
+
"default": "<TextInput\n id=\"first-name\"\n label=\"First Name\"\n name=\"firstName\"\n onChange={handleFieldChange}\n placeholder=\"Enter first name\"\n value={formFields.firstName}\n/>\n<TextInput\n id=\"middle-initial\"\n label=\"Middle Initial\"\n name=\"middleInitial\"\n onChange={handleFieldChange}\n placeholder=\"Enter middle initial\"\n value={formFields.middleInitial}\n/>\n<TextInput\n id=\"last-name\"\n label=\"Last Name\"\n name=\"lastName\"\n onChange={handleFieldChange}\n placeholder=\"Enter last name\"\n value={formFields.lastName}\n/>"
|
|
8
|
+
},
|
|
9
|
+
"groups": [
|
|
10
|
+
{
|
|
11
|
+
"name": "Layout",
|
|
12
|
+
"props": ["fullWidth"]
|
|
13
|
+
}
|
|
14
|
+
],
|
|
15
|
+
"presets": [
|
|
16
|
+
{
|
|
17
|
+
"name": "Text Inputs",
|
|
18
|
+
"props": {},
|
|
19
|
+
"children": "<TextInput\n id=\"first-name\"\n label=\"First Name\"\n name=\"firstName\"\n onChange={handleFieldChange}\n placeholder=\"Enter first name\"\n value={formFields.firstName}\n/>\n<TextInput\n id=\"middle-initial\"\n label=\"Middle Initial\"\n name=\"middleInitial\"\n onChange={handleFieldChange}\n placeholder=\"Enter middle initial\"\n value={formFields.middleInitial}\n/>\n<TextInput\n id=\"last-name\"\n label=\"Last Name\"\n name=\"lastName\"\n onChange={handleFieldChange}\n placeholder=\"Enter last name\"\n value={formFields.lastName}\n/>"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"name": "Full Width",
|
|
23
|
+
"props": {
|
|
24
|
+
"fullWidth": true
|
|
25
|
+
},
|
|
26
|
+
"children": "<TextInput\n id=\"first-name-full-width\"\n label=\"First Name\"\n name=\"firstName\"\n onChange={handleFieldChange}\n placeholder=\"Enter first name\"\n value={formFields.firstName}\n/>\n<TextInput\n id=\"middle-initial-full-width\"\n label=\"Middle Initial\"\n name=\"middleInitial\"\n onChange={handleFieldChange}\n placeholder=\"Enter middle initial\"\n value={formFields.middleInitial}\n/>\n<TextInput\n id=\"last-name-full-width\"\n label=\"Last Name\"\n name=\"lastName\"\n onChange={handleFieldChange}\n placeholder=\"Enter last name\"\n value={formFields.lastName}\n/>"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "Search Button",
|
|
30
|
+
"props": {},
|
|
31
|
+
"children": "<TextInput\n id=\"search-with-action\"\n label=\"Search\"\n name=\"search\"\n onChange={handleFieldChange}\n placeholder=\"Search\"\n value={formFields.search}\n/>\n<Button\n onClick={() => alert(\"Button clicked!\")}\n text=\"Submit\"\n variant=\"secondary\"\n/>"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"name": "Select",
|
|
35
|
+
"props": {},
|
|
36
|
+
"children": "<TextInput\n id=\"artist-name\"\n name=\"artistName\"\n onChange={handleFieldChange}\n placeholder=\"Enter Artist Name\"\n value={formFields.artistName || \"\"}\n/>\n<Select\n blankSelection=\"Genre\"\n name=\"genre\"\n options={[\n { value: \"Country\" },\n { value: \"Pop\" },\n { value: \"Rock\" },\n { value: \"Hip-Hop/Rap\" }\n ]}\n/>"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "Date Picker",
|
|
40
|
+
"props": {},
|
|
41
|
+
"children": "<TextInput\n id=\"event-name\"\n label=\"Event\"\n name=\"eventName\"\n onChange={handleFieldChange}\n placeholder=\"Event Name\"\n value={formFields.eventName}\n/>\n<DatePicker\n label=\"Event Date\"\n pickerId=\"form-group-event-date\"\n/>"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "Typeahead Action",
|
|
45
|
+
"props": {},
|
|
46
|
+
"children": "<Typeahead\n id=\"products\"\n label=\"Products\"\n options={[\n { label: \"Windows\", value: \"windows\" },\n { label: \"Roof\", value: \"roof\" },\n { label: \"Siding\", value: \"siding\" },\n { label: \"Doors\", value: \"doors\" }\n ]}\n/>\n<Button\n onClick={() => alert(\"Product added!\")}\n text=\"Add\"\n variant=\"secondary\"\n/>"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "Selectable Cards",
|
|
50
|
+
"props": {},
|
|
51
|
+
"children": "<SelectableCard\n checked={formFields.animal === \"cat\"}\n inputId=\"cat-option\"\n multi={false}\n name=\"animal\"\n onChange={handleAnimalChange}\n value=\"cat\"\n>\n Cat\n</SelectableCard>\n<SelectableCard\n checked={formFields.animal === \"dog\"}\n inputId=\"dog-option\"\n multi={false}\n name=\"animal\"\n onChange={handleAnimalChange}\n value=\"dog\"\n>\n Dog\n</SelectableCard>"
|
|
52
|
+
}
|
|
53
|
+
],
|
|
54
|
+
"hints": {
|
|
55
|
+
"text_inputs": {
|
|
56
|
+
"presetName": "Text Inputs",
|
|
57
|
+
"message": "Text Inputs uses state-backed child inputs so the playground fields stay editable.",
|
|
58
|
+
"type": "info"
|
|
59
|
+
},
|
|
60
|
+
"full_width": {
|
|
61
|
+
"presetName": "Full Width",
|
|
62
|
+
"message": "Full Width applies fullWidth to the FormGroup while leaving each child input editable.",
|
|
63
|
+
"type": "info"
|
|
64
|
+
},
|
|
65
|
+
"search_button": {
|
|
66
|
+
"presetName": "Search Button",
|
|
67
|
+
"message": "Search Button pairs a controlled text field with an action button in the same group.",
|
|
68
|
+
"type": "info"
|
|
69
|
+
},
|
|
70
|
+
"select": {
|
|
71
|
+
"presetName": "Select",
|
|
72
|
+
"message": "Select shows mixed children inside the group, with the options array kept directly in editable children.",
|
|
73
|
+
"type": "info"
|
|
74
|
+
},
|
|
75
|
+
"date_picker": {
|
|
76
|
+
"presetName": "Date Picker",
|
|
77
|
+
"message": "Date Picker combines a text input with a picker child, including the pickerId required by the kit.",
|
|
78
|
+
"type": "info"
|
|
79
|
+
},
|
|
80
|
+
"typeahead_action": {
|
|
81
|
+
"presetName": "Typeahead Action",
|
|
82
|
+
"message": "Typeahead Action mirrors the docs pattern of a searchable Typeahead plus an adjacent button.",
|
|
83
|
+
"type": "info"
|
|
84
|
+
},
|
|
85
|
+
"selectable_cards": {
|
|
86
|
+
"presetName": "Selectable Cards",
|
|
87
|
+
"message": "Selectable Cards keeps both card options in children so each option can be edited together.",
|
|
88
|
+
"type": "info"
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
@@ -4,33 +4,174 @@
|
|
|
4
4
|
"defaults": {
|
|
5
5
|
"textTransform": "none",
|
|
6
6
|
"color": "primary",
|
|
7
|
-
"wrapped": false
|
|
7
|
+
"wrapped": false,
|
|
8
|
+
"text": "This is a tag",
|
|
9
|
+
"tabIndex": 0,
|
|
10
|
+
"onClick": "() => alert('Click!')"
|
|
8
11
|
},
|
|
9
12
|
"groups": [
|
|
10
13
|
{
|
|
11
|
-
"name": "
|
|
14
|
+
"name": "Content",
|
|
12
15
|
"props": [
|
|
13
16
|
"text",
|
|
14
17
|
"name",
|
|
15
|
-
"
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
+
"icon",
|
|
19
|
+
"avatarUrl"
|
|
20
|
+
]
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"name": "Appearance",
|
|
24
|
+
"props": [
|
|
25
|
+
"color",
|
|
18
26
|
"size",
|
|
19
27
|
"textTransform",
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
28
|
+
"wrapped"
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"name": "Interaction",
|
|
33
|
+
"props": [
|
|
34
|
+
"tabIndex"
|
|
25
35
|
]
|
|
26
36
|
}
|
|
27
37
|
],
|
|
28
38
|
"presets": [
|
|
29
39
|
{
|
|
30
|
-
"name": "
|
|
31
|
-
"props": {
|
|
40
|
+
"name": "Tag",
|
|
41
|
+
"props": {
|
|
42
|
+
"text": "this is a tag",
|
|
43
|
+
"name": "",
|
|
44
|
+
"icon": ""
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "Lowercase",
|
|
49
|
+
"props": {
|
|
50
|
+
"text": "THIS IS A TAG",
|
|
51
|
+
"textTransform": "lowercase",
|
|
52
|
+
"name": "",
|
|
53
|
+
"icon": ""
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"name": "Icon and tag",
|
|
58
|
+
"props": {
|
|
59
|
+
"text": "icon and tag",
|
|
60
|
+
"icon": "badge-check",
|
|
61
|
+
"name": ""
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "User",
|
|
66
|
+
"props": {
|
|
67
|
+
"text": "",
|
|
68
|
+
"name": "Anna Black",
|
|
69
|
+
"icon": "",
|
|
70
|
+
"avatarUrl": ""
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "User with avatar",
|
|
75
|
+
"props": {
|
|
76
|
+
"text": "",
|
|
77
|
+
"name": "Anna Black",
|
|
78
|
+
"icon": "",
|
|
79
|
+
"avatarUrl": "https://randomuser.me/api/portraits/women/44.jpg"
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"name": "Small user",
|
|
84
|
+
"props": {
|
|
85
|
+
"text": "",
|
|
86
|
+
"name": "Anna Black",
|
|
87
|
+
"icon": "",
|
|
88
|
+
"avatarUrl": "",
|
|
89
|
+
"size": "small"
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "Wrapped tag",
|
|
94
|
+
"props": {
|
|
95
|
+
"text": "form pill with a very long tag to show wrapped text",
|
|
96
|
+
"name": "",
|
|
97
|
+
"icon": "",
|
|
98
|
+
"wrapped": true
|
|
99
|
+
}
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"name": "Wrapped user",
|
|
103
|
+
"props": {
|
|
104
|
+
"text": "",
|
|
105
|
+
"name": "Princess Amelia Mignonette Grimaldi Thermopolis Renaldo",
|
|
106
|
+
"icon": "",
|
|
107
|
+
"avatarUrl": "https://randomuser.me/api/portraits/women/44.jpg",
|
|
108
|
+
"wrapped": true
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"name": "Success",
|
|
113
|
+
"props": {
|
|
114
|
+
"text": "Success",
|
|
115
|
+
"color": "success",
|
|
116
|
+
"name": "",
|
|
117
|
+
"icon": ""
|
|
118
|
+
}
|
|
32
119
|
}
|
|
33
120
|
],
|
|
34
|
-
"conditionals": {
|
|
35
|
-
|
|
121
|
+
"conditionals": {
|
|
122
|
+
"avatarUrl": {
|
|
123
|
+
"requires": "name"
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"hints": {
|
|
127
|
+
"close_button": {
|
|
128
|
+
"when": {},
|
|
129
|
+
"message": "The close icon calls onClick; wire it in app code to remove the pill from your form.",
|
|
130
|
+
"type": "info"
|
|
131
|
+
},
|
|
132
|
+
"wrapped_text": {
|
|
133
|
+
"when": {
|
|
134
|
+
"wrapped": true
|
|
135
|
+
},
|
|
136
|
+
"message": "Wrapped pills expand to multiple lines instead of truncating long labels.",
|
|
137
|
+
"type": "info"
|
|
138
|
+
},
|
|
139
|
+
"user_with_avatar": {
|
|
140
|
+
"when": {
|
|
141
|
+
"avatarUrl": "https://randomuser.me/api/portraits/women/44.jpg"
|
|
142
|
+
},
|
|
143
|
+
"message": "The avatar is displayed when the avatarUrl is set. Name is required for avatar display.",
|
|
144
|
+
"type": "info"
|
|
145
|
+
},
|
|
146
|
+
"user_without_avatar": {
|
|
147
|
+
"when": {
|
|
148
|
+
"avatarUrl": ""
|
|
149
|
+
},
|
|
150
|
+
"message": "The name is displayed when the avatarUrl is not set.",
|
|
151
|
+
"type": "info"
|
|
152
|
+
},
|
|
153
|
+
"lowercase": {
|
|
154
|
+
"when": {
|
|
155
|
+
"textTransform": "lowercase"
|
|
156
|
+
},
|
|
157
|
+
"message": "The text is displayed in lowercase when the textTransform is set to lowercase.",
|
|
158
|
+
"type": "info"
|
|
159
|
+
},
|
|
160
|
+
"success": {
|
|
161
|
+
"when": {
|
|
162
|
+
"color": "success"
|
|
163
|
+
},
|
|
164
|
+
"message": "The pill is displayed in success color when the color is set to success. See the color variants section for more information on colors available.",
|
|
165
|
+
"type": "info"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
"children": {
|
|
169
|
+
"editable": false,
|
|
170
|
+
"default": ""
|
|
171
|
+
},
|
|
172
|
+
"hiddenProps": [
|
|
173
|
+
"onClick",
|
|
174
|
+
"closeProps",
|
|
175
|
+
"avatar"
|
|
176
|
+
]
|
|
36
177
|
}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
{
|
|
2
|
+
"children": {
|
|
3
|
+
"editable": false,
|
|
4
|
+
"default": ""
|
|
5
|
+
},
|
|
6
|
+
"defaults": {
|
|
7
|
+
"text": "This is a tag",
|
|
8
|
+
"color": "primary",
|
|
9
|
+
"textTransform": "none",
|
|
10
|
+
"wrapped": false,
|
|
11
|
+
"tabIndex": 0,
|
|
12
|
+
"onClick": "() => alert('Click!')"
|
|
13
|
+
},
|
|
14
|
+
"hiddenProps": ["onClick", "closeProps", "avatar"],
|
|
15
|
+
"groups": [
|
|
16
|
+
{
|
|
17
|
+
"name": "Content",
|
|
18
|
+
"props": ["text", "name", "icon", "avatarUrl"]
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "Appearance",
|
|
22
|
+
"props": ["color", "size", "textTransform", "wrapped"]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"name": "Interaction",
|
|
26
|
+
"props": ["tabIndex"]
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"presets": [
|
|
30
|
+
{
|
|
31
|
+
"name": "Tag",
|
|
32
|
+
"props": {
|
|
33
|
+
"text": "this is a tag",
|
|
34
|
+
"name": "",
|
|
35
|
+
"icon": ""
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"name": "Lowercase",
|
|
40
|
+
"props": {
|
|
41
|
+
"text": "THIS IS A TAG",
|
|
42
|
+
"textTransform": "lowercase",
|
|
43
|
+
"name": "",
|
|
44
|
+
"icon": ""
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "Icon and tag",
|
|
49
|
+
"props": {
|
|
50
|
+
"text": "icon and tag",
|
|
51
|
+
"icon": "badge-check",
|
|
52
|
+
"name": ""
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "User",
|
|
57
|
+
"props": {
|
|
58
|
+
"text": "",
|
|
59
|
+
"name": "Anna Black",
|
|
60
|
+
"icon": "",
|
|
61
|
+
"avatarUrl": ""
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"name": "User with avatar",
|
|
66
|
+
"props": {
|
|
67
|
+
"text": "",
|
|
68
|
+
"name": "Anna Black",
|
|
69
|
+
"icon": "",
|
|
70
|
+
"avatarUrl": "https://randomuser.me/api/portraits/women/44.jpg"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"name": "Small user",
|
|
75
|
+
"props": {
|
|
76
|
+
"text": "",
|
|
77
|
+
"name": "Anna Black",
|
|
78
|
+
"icon": "",
|
|
79
|
+
"avatarUrl": "",
|
|
80
|
+
"size": "small"
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"name": "Wrapped tag",
|
|
85
|
+
"props": {
|
|
86
|
+
"text": "form pill with a very long tag to show wrapped text",
|
|
87
|
+
"name": "",
|
|
88
|
+
"icon": "",
|
|
89
|
+
"wrapped": true
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"name": "Wrapped user",
|
|
94
|
+
"props": {
|
|
95
|
+
"text": "",
|
|
96
|
+
"name": "Princess Amelia Mignonette Grimaldi Thermopolis Renaldo",
|
|
97
|
+
"icon": "",
|
|
98
|
+
"avatarUrl": "https://randomuser.me/api/portraits/women/44.jpg",
|
|
99
|
+
"wrapped": true
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"name": "Success",
|
|
104
|
+
"props": {
|
|
105
|
+
"text": "Success",
|
|
106
|
+
"color": "success",
|
|
107
|
+
"name": "",
|
|
108
|
+
"icon": ""
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
],
|
|
112
|
+
"conditionals": {
|
|
113
|
+
"avatarUrl": { "requires": "name" }
|
|
114
|
+
},
|
|
115
|
+
"hints": {
|
|
116
|
+
"close_button": {
|
|
117
|
+
"when": {},
|
|
118
|
+
"message": "The close icon calls onClick; wire it in app code to remove the pill from your form.",
|
|
119
|
+
"type": "info"
|
|
120
|
+
},
|
|
121
|
+
"wrapped_text": {
|
|
122
|
+
"when": { "wrapped": true },
|
|
123
|
+
"message": "Wrapped pills expand to multiple lines instead of truncating long labels.",
|
|
124
|
+
"type": "info"
|
|
125
|
+
},
|
|
126
|
+
"user_with_avatar": {
|
|
127
|
+
"when": { "avatarUrl": "https://randomuser.me/api/portraits/women/44.jpg" },
|
|
128
|
+
"message": "The avatar is displayed when the avatarUrl is set. Name is required for avatar display.",
|
|
129
|
+
"type": "info"
|
|
130
|
+
},
|
|
131
|
+
"user_without_avatar": {
|
|
132
|
+
"when": { "avatarUrl": "" },
|
|
133
|
+
"message": "The name is displayed when the avatarUrl is not set.",
|
|
134
|
+
"type": "info"
|
|
135
|
+
},
|
|
136
|
+
"lowercase": {
|
|
137
|
+
"when": { "textTransform": "lowercase" },
|
|
138
|
+
"message": "The text is displayed in lowercase when the textTransform is set to lowercase.",
|
|
139
|
+
"type": "info"
|
|
140
|
+
},
|
|
141
|
+
"success": {
|
|
142
|
+
"when": { "color": "success" },
|
|
143
|
+
"message": "The pill is displayed in success color when the color is set to success. See the color variants section for more information on colors available.",
|
|
144
|
+
"type": "info"
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Full Screen creates a focused overlay for workflows that need more room, such as tables, filters, dashboards, or review screens. It can manage its own trigger or be controlled with `useFullScreen` when the trigger needs to live elsewhere in the interface.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import FullScreen from "../../pb_full_screen/_full_screen";
|
|
3
|
+
import useFullScreen from "../../pb_full_screen/useFullScreen";
|
|
4
|
+
import AdvancedTable from "../../pb_advanced_table/_advanced_table";
|
|
5
|
+
import Button from "../../pb_button/_button";
|
|
6
|
+
import MOCK_DATA from "../../pb_advanced_table/docs/advanced_table_mock_data.json";
|
|
7
|
+
|
|
8
|
+
const columnDefinitions = [
|
|
9
|
+
{
|
|
10
|
+
accessor: "year",
|
|
11
|
+
label: "Year",
|
|
12
|
+
cellAccessors: ["quarter", "month", "day"],
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
accessor: "newEnrollments",
|
|
16
|
+
label: "New Enrollments",
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
accessor: "scheduledMeetings",
|
|
20
|
+
label: "Scheduled Meetings",
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
accessor: "attendanceRate",
|
|
24
|
+
label: "Attendance Rate",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
accessor: "completedClasses",
|
|
28
|
+
label: "Completed Classes",
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
accessor: "classCompletionRate",
|
|
32
|
+
label: "Class Completion Rate",
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
accessor: "graduatedStudents",
|
|
36
|
+
label: "Graduated Students",
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
|
|
40
|
+
const FullScreenContentPadding = (props) => {
|
|
41
|
+
const [isFullscreen, setIsFullscreen] = useFullScreen(false);
|
|
42
|
+
|
|
43
|
+
return (
|
|
44
|
+
<>
|
|
45
|
+
<Button
|
|
46
|
+
marginBottom="md"
|
|
47
|
+
onClick={() => setIsFullscreen(true)}
|
|
48
|
+
text="Enter Fullscreen"
|
|
49
|
+
{...props}
|
|
50
|
+
/>
|
|
51
|
+
<FullScreen
|
|
52
|
+
contentPadding="md"
|
|
53
|
+
headerText="Fullscreen Table"
|
|
54
|
+
isFullscreen={isFullscreen}
|
|
55
|
+
onClose={() => setIsFullscreen(false)}
|
|
56
|
+
{...props}
|
|
57
|
+
>
|
|
58
|
+
<AdvancedTable
|
|
59
|
+
columnDefinitions={columnDefinitions}
|
|
60
|
+
tableData={MOCK_DATA}
|
|
61
|
+
{...props}
|
|
62
|
+
/>
|
|
63
|
+
</FullScreen>
|
|
64
|
+
</>
|
|
65
|
+
);
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
export default FullScreenContentPadding;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Use `contentPadding` to tune the spacing around fullscreen content. The default is `lg` for comfortable breathing room; choose a smaller value like `md` when the content is dense or already has its own container spacing.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import FullScreen from "../../pb_full_screen/_full_screen";
|
|
3
|
+
import useFullScreen from "../../pb_full_screen/useFullScreen";
|
|
4
|
+
import AdvancedTable from "../../pb_advanced_table/_advanced_table";
|
|
5
|
+
import Flex from "../../pb_flex/_flex";
|
|
6
|
+
import MOCK_DATA from "../../pb_advanced_table/docs/advanced_table_mock_data.json";
|
|
7
|
+
import CircleIconButton from "../../pb_circle_icon_button/_circle_icon_button";
|
|
8
|
+
|
|
9
|
+
const columnDefinitions = [
|
|
10
|
+
{
|
|
11
|
+
accessor: "year",
|
|
12
|
+
label: "Year",
|
|
13
|
+
cellAccessors: ["quarter", "month", "day"],
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
accessor: "newEnrollments",
|
|
17
|
+
label: "New Enrollments",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
accessor: "scheduledMeetings",
|
|
21
|
+
label: "Scheduled Meetings",
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
accessor: "attendanceRate",
|
|
25
|
+
label: "Attendance Rate",
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
accessor: "completedClasses",
|
|
29
|
+
label: "Completed Classes",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
accessor: "classCompletionRate",
|
|
33
|
+
label: "Class Completion Rate",
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
accessor: "graduatedStudents",
|
|
37
|
+
label: "Graduated Students",
|
|
38
|
+
},
|
|
39
|
+
];
|
|
40
|
+
|
|
41
|
+
const FullScreenCustomTrigger = (props) => {
|
|
42
|
+
const [isFullscreen, setIsFullscreen] = useFullScreen(false);
|
|
43
|
+
|
|
44
|
+
return (
|
|
45
|
+
<>
|
|
46
|
+
<Flex justify="end">
|
|
47
|
+
<CircleIconButton
|
|
48
|
+
icon="expand"
|
|
49
|
+
marginBottom="md"
|
|
50
|
+
onClick={() => setIsFullscreen(true)}
|
|
51
|
+
{...props}
|
|
52
|
+
/>
|
|
53
|
+
</Flex>
|
|
54
|
+
|
|
55
|
+
<FullScreen
|
|
56
|
+
headerText="Fullscreen Table"
|
|
57
|
+
isFullscreen={isFullscreen}
|
|
58
|
+
onClose={() => setIsFullscreen(false)}
|
|
59
|
+
{...props}
|
|
60
|
+
>
|
|
61
|
+
<AdvancedTable
|
|
62
|
+
columnDefinitions={columnDefinitions}
|
|
63
|
+
tableData={MOCK_DATA}
|
|
64
|
+
{...props}
|
|
65
|
+
/>
|
|
66
|
+
</FullScreen>
|
|
67
|
+
</>
|
|
68
|
+
);
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
export default FullScreenCustomTrigger;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Use `useFullScreen` when the trigger belongs somewhere else on the page, such as a toolbar or table action area. Pass the hook state to `isFullscreen`, open the overlay from your external control, and reset the state with `onClose`.
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import FullScreen from "../../pb_full_screen/_full_screen";
|
|
3
|
+
import AdvancedTable from "../../pb_advanced_table/_advanced_table";
|
|
4
|
+
import Button from "../../pb_button/_button";
|
|
5
|
+
import MOCK_DATA from "../../pb_advanced_table/docs/advanced_table_mock_data.json";
|
|
6
|
+
|
|
7
|
+
const columnDefinitions = [
|
|
8
|
+
{
|
|
9
|
+
accessor: "year",
|
|
10
|
+
label: "Year",
|
|
11
|
+
cellAccessors: ["quarter", "month", "day"],
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
accessor: "newEnrollments",
|
|
15
|
+
label: "New Enrollments",
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
accessor: "scheduledMeetings",
|
|
19
|
+
label: "Scheduled Meetings",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
accessor: "attendanceRate",
|
|
23
|
+
label: "Attendance Rate",
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
accessor: "completedClasses",
|
|
27
|
+
label: "Completed Classes",
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
accessor: "classCompletionRate",
|
|
31
|
+
label: "Class Completion Rate",
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
accessor: "graduatedStudents",
|
|
35
|
+
label: "Graduated Students",
|
|
36
|
+
},
|
|
37
|
+
];
|
|
38
|
+
|
|
39
|
+
const FullScreenDefault = (props) => {
|
|
40
|
+
|
|
41
|
+
return (
|
|
42
|
+
<FullScreen
|
|
43
|
+
headerText="Fullscreen Table"
|
|
44
|
+
trigger={({ onClick, isOpen }) => (
|
|
45
|
+
<Button
|
|
46
|
+
marginBottom="md"
|
|
47
|
+
onClick={onClick}
|
|
48
|
+
text={isOpen ? "Exit Fullscreen" : "Enter Fullscreen"}
|
|
49
|
+
{...props}
|
|
50
|
+
/>
|
|
51
|
+
)}
|
|
52
|
+
{...props}
|
|
53
|
+
>
|
|
54
|
+
<AdvancedTable
|
|
55
|
+
columnDefinitions={columnDefinitions}
|
|
56
|
+
tableData={MOCK_DATA}
|
|
57
|
+
{...props}
|
|
58
|
+
/>
|
|
59
|
+
</FullScreen>
|
|
60
|
+
);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export default FullScreenDefault;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Use the `trigger` prop for the simplest setup. The trigger render function receives the fullscreen state and toggle handler, so the control can open and close the overlay without managing separate state.
|