playbook_ui 14.15.0 → 14.16.0.pre.alpha.PBNTR924reacttablecustomheaders6846
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/_playbook.scss +4 -2
- data/app/pb_kits/playbook/pb_advanced_table/_advanced_table.scss +41 -2
- data/app/pb_kits/playbook/pb_advanced_table/advanced_table.html.erb +2 -2
- data/app/pb_kits/playbook/pb_advanced_table/advanced_table.rb +10 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_collapsible_trail.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_headers.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_headers_custom_cell.jsx +3 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_column_headers_multiple.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_custom_cell.jsx +8 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_expanded_control.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_editing.jsx +102 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_editing.md +4 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_inline_row_loading.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_loading.jsx +2 -2
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_no_subrows.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_pagination_with_props.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_responsive.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows.html.erb +39 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_actions.jsx +3 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_header.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows.html.erb +33 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_no_subrows_rails.md +1 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_selectable_rows_rails.md +6 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_sort_control.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_subrow_headers.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_options.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_table_props_sticky_header.jsx +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +4 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/index.js +2 -1
- data/app/pb_kits/playbook/pb_advanced_table/index.js +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/table_body.rb +4 -2
- data/app/pb_kits/playbook/pb_advanced_table/table_header.html.erb +19 -9
- data/app/pb_kits/playbook/pb_advanced_table/table_header.rb +38 -1
- data/app/pb_kits/playbook/pb_advanced_table/table_row.html.erb +49 -37
- data/app/pb_kits/playbook/pb_advanced_table/table_row.rb +39 -0
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_badge_component_overlay.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_circle_icon_component_overlay.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_monogram.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_no_image.jsx +1 -1
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_status.jsx +1 -1
- data/app/pb_kits/playbook/pb_background/docs/_background_category.jsx +2 -2
- data/app/pb_kits/playbook/pb_background/docs/_background_gradient.jsx +1 -1
- data/app/pb_kits/playbook/pb_background/docs/_background_image.jsx +6 -2
- data/app/pb_kits/playbook/pb_background/docs/_background_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_background/docs/_background_size.jsx +1 -1
- data/app/pb_kits/playbook/pb_background/docs/_background_status.jsx +2 -2
- data/app/pb_kits/playbook/pb_background/docs/_background_status_subtle.jsx +2 -2
- data/app/pb_kits/playbook/pb_background/docs/_background_white.jsx +1 -1
- data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.tsx +1 -1
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend.jsx +1 -1
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_non_clickable.jsx +1 -1
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend_position.jsx +3 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_articles.jsx +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_block.jsx +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_styled.jsx +1 -1
- data/app/pb_kits/playbook/pb_bread_crumbs/docs/_bread_crumbs_default.jsx +2 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_accessibility.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_block_content.jsx +2 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_form.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_full_width.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_hover.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_icon_options.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_link.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_loading.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_reaction.jsx +1 -1
- data/app/pb_kits/playbook/pb_button/docs/_button_size.jsx +1 -1
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_default.jsx +3 -1
- data/app/pb_kits/playbook/pb_button_toolbar/docs/_button_toolbar_secondary.jsx +2 -1
- data/app/pb_kits/playbook/pb_caption/docs/_caption_block.jsx +1 -1
- data/app/pb_kits/playbook/pb_caption/docs/_caption_colors.jsx +1 -1
- data/app/pb_kits/playbook/pb_caption/docs/_caption_light.jsx +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_background.jsx +1 -1
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_error.jsx +1 -1
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_indeterminate.jsx +2 -1
- data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_react_hook.jsx +4 -1
- data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.tsx +1 -1
- data/app/pb_kits/playbook/pb_circle_chart/docs/_circle_chart_legend_position.jsx +1 -1
- data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_click.jsx +1 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_color.jsx +1 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main.jsx +7 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_with_icon.jsx +7 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_icons.jsx +1 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_no_icon.jsx +1 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_size.jsx +1 -1
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_state.jsx +4 -1
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail.jsx +1 -1
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_default.jsx +3 -1
- data/app/pb_kits/playbook/pb_copy_button/docs/_copy_button_from.jsx +5 -1
- data/app/pb_kits/playbook/pb_currency/docs/_currency_null_display.jsx +1 -1
- data/app/pb_kits/playbook/pb_currency/docs/_currency_unstyled.jsx +3 -1
- data/app/pb_kits/playbook/pb_date/docs/_date_alignment.jsx +2 -1
- data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +4 -1
- data/app/pb_kits/playbook/pb_date/docs/_date_unstyled.jsx +4 -1
- data/app/pb_kits/playbook/pb_date/docs/_date_variants.jsx +2 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_hooks.md +3 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.html.erb +39 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_change.jsx +3 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.html.erb +39 -0
- data/app/pb_kits/playbook/pb_date_picker/docs/_date_picker_on_close.jsx +3 -1
- data/app/pb_kits/playbook/pb_date_picker/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_date_range_stacked/docs/_date_range_stacked_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_date_year_stacked/docs/_date_year_stacked_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_detail/docs/_detail_bold.jsx +1 -1
- data/app/pb_kits/playbook/pb_detail/docs/_detail_colors.jsx +1 -1
- data/app/pb_kits/playbook/pb_detail/docs/_detail_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_detail/docs/_detail_styled.jsx +1 -1
- data/app/pb_kits/playbook/pb_dialog/dialog.html.erb +5 -6
- data/app/pb_kits/playbook/pb_dialog/dialogHelper.js +2 -0
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_compound_components.jsx +7 -8
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_default.jsx +3 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height.jsx +8 -9
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_full_height_placement.jsx +8 -9
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_loading.jsx +2 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_scrollable.jsx +2 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_separators.jsx +3 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_should_close_on_overlay.jsx +2 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_sizes.jsx +3 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_stacked_alert.jsx +3 -1
- data/app/pb_kits/playbook/pb_dialog/docs/_dialog_status.jsx +4 -1
- data/app/pb_kits/playbook/pb_dialog/index.js +75 -0
- data/app/pb_kits/playbook/pb_docs/kit_example.rb +14 -0
- data/app/pb_kits/playbook/pb_draggable/_draggable.scss +115 -5
- data/app/pb_kits/playbook/pb_draggable/_draggable.tsx +6 -4
- data/app/pb_kits/playbook/pb_draggable/context/index.tsx +35 -9
- data/app/pb_kits/playbook/pb_draggable/context/types.ts +35 -28
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_default.jsx +6 -1
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones.jsx +184 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones.md +5 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors.jsx +97 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_drop_zones_colors.md +1 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.jsx +11 -12
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards.jsx +9 -10
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_list.jsx +4 -1
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_selectable_list.jsx +3 -1
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_table_react.jsx +6 -1
- data/app/pb_kits/playbook/pb_draggable/subcomponents/DraggableContainer.tsx +11 -2
- data/app/pb_kits/playbook/pb_draggable/subcomponents/DraggableItem.tsx +65 -6
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_behavior.jsx +4 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_borders.jsx +4 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_breakpoints.html.erb +3 -0
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_breakpoints.jsx +2 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_default.jsx +4 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_menu.jsx +6 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_overlay.jsx +4 -1
- data/app/pb_kits/playbook/pb_drawer/docs/_drawer_sizes.jsx +4 -1
- data/app/pb_kits/playbook/pb_drawer/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_blank_selection.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_clear_selection.jsx +3 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default_value.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_error.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_separators_hidden.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subcomponent_structure.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subtle_variant.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete.jsx +5 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_autocomplete_and_custom_display.jsx +7 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.jsx +7 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_options.jsx +7 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_padding.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger.jsx +7 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_external_control.jsx +5 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_hook.jsx +8 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.jsx +1 -1
- data/app/pb_kits/playbook/pb_empty_state/_empty_state.scss +38 -0
- data/app/pb_kits/playbook/pb_empty_state/_empty_state.tsx +213 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_alignment.jsx +38 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_default.jsx +17 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_orientation.jsx +21 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/_empty_state_size.jsx +35 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/default_image/computer_fly_no_branding.svg +21 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/default_image/utils.tsx +118 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/example.yml +8 -0
- data/app/pb_kits/playbook/pb_empty_state/docs/index.js +4 -0
- data/app/pb_kits/playbook/pb_empty_state/empty_state.test.jsx +17 -0
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_accept.jsx +4 -5
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_custom_description.jsx +3 -1
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_custom_message.jsx +3 -5
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_default.jsx +3 -5
- data/app/pb_kits/playbook/pb_file_upload/docs/_file_upload_max_size.jsx +5 -6
- data/app/pb_kits/playbook/pb_filter/Filter/SortMenu.tsx +2 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_default.jsx +6 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_max_height.jsx +5 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_max_width.jsx +5 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.jsx +6 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_no_sort.jsx +5 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_only.jsx +5 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_placement.jsx +6 -1
- data/app/pb_kits/playbook/pb_filter/docs/_filter_popover_props.jsx +5 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.scss +2 -2
- data/app/pb_kits/playbook/pb_flex/docs/_flex_align.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_default.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_gap.jsx +2 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_inline.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_item_align_self.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_item_example.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_justify.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_reverse.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_spacing.jsx +3 -1
- data/app/pb_kits/playbook/pb_flex/docs/_flex_wrap.jsx +4 -1
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +68 -1
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +68 -1
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_colors.jsx +3 -1
- data/app/pb_kits/playbook/pb_form_pill/docs/_form_pill_truncated_text.jsx +5 -1
- data/app/pb_kits/playbook/pb_gantt_chart/docs/_gantt_chart_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/_gauge.tsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_colors.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_complex.jsx +9 -10
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_disable_animation.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_full_circle.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_height.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_live_data.jsx +3 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_min_max.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_sizing.jsx +4 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_title.jsx +1 -1
- data/app/pb_kits/playbook/pb_gauge/docs/_gauge_units.jsx +1 -1
- data/app/pb_kits/playbook/pb_hashtag/docs/_hashtag_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_hashtag/docs/_hashtag_link.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon/_icon.scss +8 -1
- data/app/pb_kits/playbook/pb_icon/docs/_icon_color.html.erb +10 -4
- data/app/pb_kits/playbook/pb_icon/docs/_icon_color.jsx +49 -24
- data/app/pb_kits/playbook/pb_icon/docs/_icon_custom.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_button/_icon_button.tsx +5 -2
- data/app/pb_kits/playbook/pb_icon_button/docs/_icon_button_click.jsx +13 -0
- data/app/pb_kits/playbook/pb_icon_button/docs/_icon_button_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_button/docs/_icon_button_sizes.jsx +3 -1
- data/app/pb_kits/playbook/pb_icon_button/docs/example.yml +1 -0
- data/app/pb_kits/playbook/pb_icon_button/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_icon_button/icon_button.html.erb +1 -1
- data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_sizes.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_color.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_sizes.jsx +1 -1
- data/app/pb_kits/playbook/pb_icon_stat_value/docs/_icon_stat_value_vertical.jsx +1 -1
- data/app/pb_kits/playbook/pb_label_value/docs/_label_value_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details.jsx +1 -1
- data/app/pb_kits/playbook/pb_label_value/docs/_label_value_details_examples.jsx +3 -1
- data/app/pb_kits/playbook/pb_legend/docs/_legend_colors.jsx +1 -1
- data/app/pb_kits/playbook/pb_legend/docs/_legend_custom_colors.jsx +1 -1
- data/app/pb_kits/playbook/pb_legend/docs/_legend_prefix.jsx +1 -1
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Slide.tsx +1 -1
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Slides.tsx +1 -1
- data/app/pb_kits/playbook/pb_lightbox/Carousel/Thumbnails.tsx +1 -1
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_compound_component.jsx +2 -1
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_current_photo.jsx +6 -1
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_custom_header.jsx +4 -1
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_default.jsx +2 -1
- data/app/pb_kits/playbook/pb_lightbox/docs/_lightbox_multiple.jsx +2 -1
- data/app/pb_kits/playbook/pb_line_graph/_line_graph.tsx +1 -1
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend.jsx +1 -1
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_nonclickable.jsx +1 -1
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend_position.jsx +2 -1
- data/app/pb_kits/playbook/pb_link/docs/_link_color.jsx +1 -1
- data/app/pb_kits/playbook/pb_link/docs/_link_disabled.jsx +1 -1
- data/app/pb_kits/playbook/pb_link/docs/_link_icon.jsx +1 -1
- data/app/pb_kits/playbook/pb_link/docs/_link_tag.jsx +1 -1
- data/app/pb_kits/playbook/pb_link/docs/_link_target.jsx +1 -1
- data/app/pb_kits/playbook/pb_link/docs/_link_underline.jsx +1 -1
- data/app/pb_kits/playbook/pb_map/docs/_map_default.jsx +2 -1
- data/app/pb_kits/playbook/pb_map/docs/_map_with_custom_button.jsx +5 -1
- data/app/pb_kits/playbook/pb_map/docs/_map_with_plugin.jsx +2 -1
- data/app/pb_kits/playbook/pb_message/docs/_message_timestamp.jsx +1 -1
- data/app/pb_kits/playbook/pb_multi_level_select/_helper_functions.tsx +5 -1
- data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.scss +23 -0
- data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.tsx +72 -10
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled.html.erb +1 -1
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options.html.erb +76 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options.jsx +94 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options.md +1 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_default.html.erb +75 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_default.jsx +93 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_default.md +3 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_parent.html.erb +75 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_parent.jsx +93 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_parent.md +3 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_parent_default.html.erb +74 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_parent_default.jsx +92 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_parent_default.md +3 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_error.html.erb +72 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_error.jsx +97 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.html.erb +71 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_label.jsx +91 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.jsx +91 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_react_hook.md +1 -0
- data/app/pb_kits/playbook/pb_multi_level_select/docs/example.yml +15 -2
- data/app/pb_kits/playbook/pb_multi_level_select/docs/index.js +7 -0
- data/app/pb_kits/playbook/pb_multi_level_select/index.js +105 -0
- data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.rb +11 -1
- data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select_options.tsx +1 -0
- data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_reverse.jsx +1 -1
- data/app/pb_kits/playbook/pb_multiple_users/docs/_multiple_users_size.jsx +2 -1
- data/app/pb_kits/playbook/pb_nav/_nav.scss +5 -0
- data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav.jsx +2 -1
- data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_custom.jsx +4 -1
- data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_item_spacing.jsx +2 -1
- data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_no_icon.jsx +2 -1
- data/app/pb_kits/playbook/pb_nav/docs/_collapsible_nav_with_all_options.jsx +2 -1
- data/app/pb_kits/playbook/pb_nav/docs/_nav_with_font_control.jsx +2 -1
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_default.jsx +4 -4
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_hide_scroll_bar.jsx +5 -6
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_multi_directional.jsx +4 -6
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_toggle.jsx +4 -1
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_vertical_dynamic_multi_directional.jsx +4 -6
- data/app/pb_kits/playbook/pb_pagination/docs/_pagination_page_change.jsx +2 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_breached.jsx +3 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_common.jsx +4 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_confirmation.jsx +2 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_meter_settings.jsx +6 -1
- data/app/pb_kits/playbook/pb_passphrase/docs/_passphrase_strength_change.jsx +5 -1
- data/app/pb_kits/playbook/pb_phone_number_input/_phone_number_input.tsx +6 -0
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_access_input_element.jsx +3 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_clear_field.jsx +3 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default.html.erb +1 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_format.jsx +3 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_hidden_inputs.html.erb +5 -0
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_hidden_inputs.md +1 -0
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_initial_country.jsx +1 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_only_countries.jsx +1 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_preferred_countries.jsx +1 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/_phone_number_input_validation.jsx +4 -1
- data/app/pb_kits/playbook/pb_phone_number_input/docs/example.yml +3 -1
- data/app/pb_kits/playbook/pb_phone_number_input/phone_number_input.rb +3 -0
- data/app/pb_kits/playbook/pb_popover/_popover.tsx +1 -1
- data/app/pb_kits/playbook/pb_popover/docs/_popover_actionable_content.jsx +6 -7
- data/app/pb_kits/playbook/pb_popover/docs/_popover_close.jsx +4 -5
- data/app/pb_kits/playbook/pb_popover/docs/_popover_default.jsx +5 -6
- data/app/pb_kits/playbook/pb_popover/docs/_popover_list.jsx +7 -8
- data/app/pb_kits/playbook/pb_popover/docs/_popover_scroll_height.jsx +5 -6
- data/app/pb_kits/playbook/pb_popover/docs/_popover_z_index.jsx +4 -5
- data/app/pb_kits/playbook/pb_popover/popover.test.js +1 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_align.jsx +1 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_flex.jsx +3 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_muted.jsx +1 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_value.jsx +1 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_variants.jsx +1 -1
- data/app/pb_kits/playbook/pb_progress_simple/docs/_progress_simple_width.jsx +1 -1
- data/app/pb_kits/playbook/pb_radio/docs/_radio_alignment.jsx +3 -1
- data/app/pb_kits/playbook/pb_radio/docs/_radio_error.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_advanced_preview.jsx +3 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_attributes.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_focus.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_inline.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_more_extensions.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_preview.jsx +3 -5
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_simple.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_sticky.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_templates.jsx +2 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_toolbar_bottom.jsx +1 -1
- data/app/pb_kits/playbook/pb_rich_text_editor/docs/_rich_text_editor_toolbar_disabled.jsx +1 -1
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_children.jsx +3 -1
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_color.jsx +4 -1
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_dashed.jsx +1 -1
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_line.jsx +1 -1
- data/app/pb_kits/playbook/pb_section_separator/docs/_section_separator_text.jsx +1 -1
- data/app/pb_kits/playbook/pb_select/docs/_select_error.jsx +2 -1
- data/app/pb_kits/playbook/pb_select/docs/_select_inline.jsx +2 -1
- data/app/pb_kits/playbook/pb_select/docs/_select_inline_compact.jsx +2 -1
- data/app/pb_kits/playbook/pb_select/docs/_select_inline_show_arrow.jsx +2 -1
- data/app/pb_kits/playbook/pb_selectable_card/docs/_selectable_card_error.jsx +4 -1
- data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_checkbox.jsx +1 -1
- data/app/pb_kits/playbook/pb_selectable_list/docs/_selectable_list_radio.jsx +1 -1
- data/app/pb_kits/playbook/pb_selectable_list/selectable_list.html.erb +1 -6
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_border_radius.jsx +2 -1
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_color.jsx +2 -1
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_default.jsx +1 -2
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_filter.jsx +8 -1
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_height_width.jsx +2 -1
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_layout.jsx +1 -2
- data/app/pb_kits/playbook/pb_skeleton_loading/docs/_skeleton_loading_user.jsx +5 -1
- data/app/pb_kits/playbook/pb_star_rating/star_rating.html.erb +1 -5
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_unit.jsx +1 -1
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_unit_two.jsx +1 -1
- data/app/pb_kits/playbook/pb_table/_table.tsx +4 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_clickable_rows.jsx +2 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible.jsx +4 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_click.jsx +4 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_custom_content.jsx +7 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_rows.jsx +4 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_collapsible_with_nested_table.jsx +5 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_with_header_style_borderless.jsx +50 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_header_style_borderless_react.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_header_style_floating.jsx +59 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_header_style_floating_react.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_with_selectable_rows.jsx +5 -1
- data/app/pb_kits/playbook/pb_table/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_table/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_table/styles/_headers.scss +76 -0
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_head.tsx +11 -1
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_header.tsx +11 -1
- data/app/pb_kits/playbook/pb_table/subcomponents/_table_row.tsx +5 -0
- data/app/pb_kits/playbook/pb_table/table.html.erb +2 -12
- data/app/pb_kits/playbook/pb_table/table.test.js +17 -0
- data/app/pb_kits/playbook/pb_table/table_body.html.erb +2 -12
- data/app/pb_kits/playbook/pb_table/table_cell.html.erb +2 -12
- data/app/pb_kits/playbook/pb_table/table_head.html.erb +2 -12
- data/app/pb_kits/playbook/pb_table/table_header.html.erb +3 -12
- data/app/pb_kits/playbook/pb_table/table_row.html.erb +5 -18
- data/app/pb_kits/playbook/pb_text_input/inputMask.ts +2 -3
- data/app/pb_kits/playbook/pb_text_input/text_input.html.erb +1 -5
- data/app/pb_kits/playbook/pb_textarea/docs/_textarea_error.jsx +1 -1
- data/app/pb_kits/playbook/pb_textarea/textarea.html.erb +1 -5
- data/app/pb_kits/playbook/pb_time/time.html.erb +1 -5
- data/app/pb_kits/playbook/pb_time_range_inline/docs/_time_range_inline_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_unstyled.jsx +3 -1
- data/app/pb_kits/playbook/pb_title/title.html.erb +1 -6
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom.jsx +1 -1
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_custom_radio.jsx +3 -1
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_disabled.jsx +1 -1
- data/app/pb_kits/playbook/pb_toggle/docs/_toggle_name.jsx +3 -1
- data/app/pb_kits/playbook/pb_toggle/toggle.html.erb +1 -6
- data/app/pb_kits/playbook/pb_tooltip/_tooltip.scss +2 -2
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_default_react.jsx +3 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_delay.jsx +4 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.jsx +3 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon_rails.html.erb +22 -0
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_interaction.jsx +4 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_margin.jsx +3 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_show_tooltip_react.jsx +5 -1
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_sizing.html.erb +22 -0
- data/app/pb_kits/playbook/pb_tooltip/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_tooltip/tooltip.html.erb +7 -6
- data/app/pb_kits/playbook/pb_tooltip/tooltip.rb +32 -7
- data/app/pb_kits/playbook/pb_treemap_chart/_treemap_chart.tsx +1 -1
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.scss +4 -0
- data/app/pb_kits/playbook/pb_typeahead/_typeahead.tsx +19 -4
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_async_createable.jsx +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_createable.jsx +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_custom_menu_list.jsx +1 -3
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_disabled.html.erb +19 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_disabled.jsx +23 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.jsx +66 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_react_hook.md +1 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_truncated_text.jsx +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_highlight.jsx +6 -8
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills.jsx +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async.jsx +3 -5
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_custom_options.jsx +4 -6
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_async_users.jsx +4 -6
- data/app/pb_kits/playbook/pb_typeahead/docs/_typeahead_with_pills_color.jsx +1 -1
- data/app/pb_kits/playbook/pb_typeahead/docs/example.yml +3 -0
- data/app/pb_kits/playbook/pb_typeahead/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_typeahead/typeahead.rb +3 -0
- data/app/pb_kits/playbook/pb_user/_user.tsx +78 -13
- data/app/pb_kits/playbook/pb_user/docs/_user_block_content_subtitle_react.jsx +6 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_font_options.html.erb +22 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_font_options.jsx +40 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_font_options_rails.md +5 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_font_options_react.md +5 -0
- data/app/pb_kits/playbook/pb_user/docs/_user_light_weight.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_size.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_subtitle.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_text_only.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_vertical_size.jsx +1 -1
- data/app/pb_kits/playbook/pb_user/docs/_user_with_territory.jsx +1 -1
- 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/app/pb_kits/playbook/pb_user/user.html.erb +27 -6
- data/app/pb_kits/playbook/pb_user/user.rb +17 -1
- data/app/pb_kits/playbook/pb_user/user.test.js +182 -1
- data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_continuous.jsx +2 -1
- data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_default.jsx +2 -1
- data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_multi_beacon.jsx +2 -1
- data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_no_beacon.jsx +2 -1
- data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_no_overlay.jsx +2 -1
- data/app/pb_kits/playbook/pb_walkthrough/docs/_walkthrough_styled.jsx +2 -1
- data/app/pb_kits/playbook/tokens/_colors.scss +1 -4
- data/app/pb_kits/playbook/tokens/_display.scss +3 -1
- data/app/pb_kits/playbook/utilities/_display.scss +6 -1
- data/app/pb_kits/playbook/utilities/object.test.js +139 -1
- data/app/pb_kits/playbook/utilities/object.ts +86 -0
- data/app/pb_kits/playbook/utilities/test/globalProps/display.test.js +1 -1
- data/app/pb_kits/playbook/utilities/text.ts +1 -1
- data/dist/chunks/_typeahead-HN7DWIZV.js +22 -0
- data/dist/chunks/_weekday_stacked-CEWwCgZj.js +45 -0
- data/dist/chunks/lazysizes-B7xYodB-.js +1 -0
- data/dist/chunks/lib-Co5y3V4K.js +29 -0
- data/dist/chunks/{pb_form_validation-DGhKbZtO.js → pb_form_validation-DMajaRt3.js} +1 -1
- data/dist/chunks/vendor.js +1 -1
- data/dist/menu.yml +9 -1
- data/dist/playbook-doc.js +1 -1
- data/dist/playbook-rails-react-bindings.js +1 -1
- data/dist/playbook-rails.js +1 -1
- data/dist/playbook.css +1 -1
- data/lib/playbook/display.rb +2 -2
- data/lib/playbook/forms/builder/multi_level_select_field.rb +2 -0
- data/lib/playbook/version.rb +2 -2
- metadata +69 -10
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_icon.erb +0 -10
- data/dist/chunks/_typeahead-BhfaW1J9.js +0 -36
- data/dist/chunks/_weekday_stacked-CKRIELiF.js +0 -45
- data/dist/chunks/lazysizes-DHz07jlL.js +0 -1
- data/dist/chunks/lib-5OzNgeeu.js +0 -29
- /data/app/pb_kits/playbook/pb_advanced_table/docs/{_advanced_table_selectable_rows_no_subrows.md → _advanced_table_selectable_rows_no_subrows_react.md} +0 -0
- /data/app/pb_kits/playbook/pb_advanced_table/docs/{_advanced_table_selectable_rows.md → _advanced_table_selectable_rows_react.md} +0 -0
@@ -1,4 +1,4 @@
|
|
1
|
-
import React, { useState, useEffect, useRef } from "react";
|
1
|
+
import React, { useState, useEffect, useRef, forwardRef } from "react";
|
2
2
|
import classnames from "classnames";
|
3
3
|
import { globalProps, GlobalProps } from "../utilities/globalProps";
|
4
4
|
import {
|
@@ -9,6 +9,8 @@ import {
|
|
9
9
|
} from "../utilities/props";
|
10
10
|
import Icon from "../pb_icon/_icon";
|
11
11
|
import FormPill from "../pb_form_pill/_form_pill";
|
12
|
+
import Body from "../pb_body/_body";
|
13
|
+
import Caption from "../pb_caption/_caption";
|
12
14
|
import { cloneDeep } from "lodash";
|
13
15
|
import MultiLevelSelectOptions from "./multi_level_select_options";
|
14
16
|
import MultiLevelSelectContext from "./context";
|
@@ -23,18 +25,29 @@ import {
|
|
23
25
|
getExpandedItems,
|
24
26
|
} from "./_helper_functions";
|
25
27
|
|
28
|
+
interface MultiLevelSelectComponent
|
29
|
+
extends React.ForwardRefExoticComponent<
|
30
|
+
MultiLevelSelectProps & React.RefAttributes<HTMLInputElement>
|
31
|
+
> {
|
32
|
+
Options: typeof MultiLevelSelectOptions;
|
33
|
+
}
|
34
|
+
|
26
35
|
type MultiLevelSelectProps = {
|
27
36
|
aria?: { [key: string]: string }
|
28
37
|
className?: string
|
29
38
|
data?: { [key: string]: string }
|
30
39
|
disabled?: boolean
|
40
|
+
error?: string
|
31
41
|
htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
|
32
42
|
id?: string
|
33
43
|
inputDisplay?: "pills" | "none"
|
34
44
|
inputName?: string
|
45
|
+
label?: string
|
35
46
|
name?: string
|
47
|
+
required?: boolean
|
36
48
|
returnAllSelected?: boolean
|
37
49
|
treeData?: { [key: string]: string; }[] | any
|
50
|
+
onChange?: (event: { target: { name?: string; value: any } }) => void
|
38
51
|
onSelect?: (prop: { [key: string]: any }) => void
|
39
52
|
selectedIds?: string[] | any
|
40
53
|
variant?: "multi" | "single"
|
@@ -42,19 +55,23 @@ type MultiLevelSelectProps = {
|
|
42
55
|
pillColor?: "primary" | "neutral" | "success" | "warning" | "error" | "info" | "data_1" | "data_2" | "data_3" | "data_4" | "data_5" | "data_6" | "data_7" | "data_8" | "windows" | "siding" | "roofing" | "doors" | "gutters" | "solar" | "insulation" | "accessories",
|
43
56
|
} & GlobalProps
|
44
57
|
|
45
|
-
const MultiLevelSelect = (props
|
58
|
+
const MultiLevelSelect = forwardRef<HTMLInputElement, MultiLevelSelectProps>((props) => {
|
46
59
|
const {
|
47
60
|
aria = {},
|
48
61
|
className,
|
49
62
|
data = {},
|
50
63
|
disabled = false,
|
64
|
+
error,
|
51
65
|
htmlOptions = {},
|
52
66
|
id,
|
53
67
|
inputDisplay = "pills",
|
54
68
|
inputName,
|
55
69
|
name,
|
70
|
+
label,
|
71
|
+
required = false,
|
56
72
|
returnAllSelected = false,
|
57
73
|
treeData,
|
74
|
+
onChange = () => null,
|
58
75
|
onSelect = () => null,
|
59
76
|
selectedIds,
|
60
77
|
variant = "multi",
|
@@ -68,6 +85,7 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
68
85
|
const htmlProps = buildHtmlProps(htmlOptions);
|
69
86
|
const classes = classnames(
|
70
87
|
buildCss("pb_multi_level_select"),
|
88
|
+
error && "error",
|
71
89
|
globalProps(props),
|
72
90
|
className
|
73
91
|
);
|
@@ -104,7 +122,9 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
104
122
|
return;
|
105
123
|
}
|
106
124
|
return tree.map((item: { [key: string]: any }) => {
|
107
|
-
item.
|
125
|
+
if (!item.disabled) {
|
126
|
+
item.checked = check;
|
127
|
+
}
|
108
128
|
item.children = modifyRecursive(item.children, check);
|
109
129
|
return item;
|
110
130
|
});
|
@@ -115,12 +135,16 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
115
135
|
treeData: { [key: string]: any }[],
|
116
136
|
selectedIds: string[],
|
117
137
|
parent_id: string | null = null,
|
118
|
-
depth = 0
|
138
|
+
depth = 0,
|
139
|
+
parentDisabled = false
|
119
140
|
) => {
|
120
141
|
if (!Array.isArray(treeData)) {
|
121
142
|
return;
|
122
143
|
}
|
123
144
|
return treeData.map((item: { [key: string]: any } | any) => {
|
145
|
+
// An item is disabled if it is explicitly set as disabled or if its parent is disabled
|
146
|
+
const isDisabled = item.disabled || (parentDisabled && !returnAllSelected);
|
147
|
+
|
124
148
|
const newItem = {
|
125
149
|
...item,
|
126
150
|
checked: Boolean(
|
@@ -128,6 +152,7 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
128
152
|
),
|
129
153
|
parent_id,
|
130
154
|
depth,
|
155
|
+
disabled: isDisabled,
|
131
156
|
};
|
132
157
|
if (newItem.children && newItem.children.length > 0) {
|
133
158
|
const children =
|
@@ -138,7 +163,8 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
138
163
|
children,
|
139
164
|
selectedIds,
|
140
165
|
newItem.id,
|
141
|
-
depth + 1
|
166
|
+
depth + 1,
|
167
|
+
isDisabled
|
142
168
|
);
|
143
169
|
}
|
144
170
|
return newItem;
|
@@ -235,8 +261,9 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
235
261
|
return tree.map((item: any) => {
|
236
262
|
if (item.id != id) item.children = modifyValue(id, item.children, check);
|
237
263
|
else {
|
238
|
-
item.
|
239
|
-
|
264
|
+
if (!item.disabled) {
|
265
|
+
item.checked = check;
|
266
|
+
}
|
240
267
|
if (variant === "single") {
|
241
268
|
// Single select: no children should be checked
|
242
269
|
item.children = modifyRecursive(item.children, !check);
|
@@ -287,8 +314,10 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
287
314
|
// Logic for removing items from returnArray or defaultReturn when pills clicked
|
288
315
|
if (returnAllSelected) {
|
289
316
|
onSelect(getCheckedItems(updatedTree));
|
317
|
+
onChange({ target: { name, value: getCheckedItems(updatedTree) } });
|
290
318
|
} else {
|
291
319
|
onSelect(getDefaultCheckedItems(updatedTree));
|
320
|
+
onChange({ target: { name, value: getDefaultCheckedItems(updatedTree) } });
|
292
321
|
}
|
293
322
|
};
|
294
323
|
|
@@ -314,8 +343,10 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
314
343
|
const updatedTree = changeItem(filtered[0], check);
|
315
344
|
if (returnAllSelected) {
|
316
345
|
onSelect(getCheckedItems(updatedTree));
|
346
|
+
onChange({ target: { name, value: getCheckedItems(updatedTree) } });
|
317
347
|
} else {
|
318
348
|
onSelect(getDefaultCheckedItems(updatedTree));
|
349
|
+
onChange({ target: { name, value: getDefaultCheckedItems(updatedTree) } });
|
319
350
|
}
|
320
351
|
};
|
321
352
|
|
@@ -348,6 +379,7 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
348
379
|
setIsDropdownClosed(true);
|
349
380
|
|
350
381
|
onSelect(selectedItem);
|
382
|
+
onChange({ target: { name, value: selectedItem } });
|
351
383
|
};
|
352
384
|
|
353
385
|
// Single select: reset the tree state upon typing
|
@@ -389,12 +421,12 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
389
421
|
// Rendering formattedData to UI based on typeahead
|
390
422
|
const renderNestedOptions = (items: { [key: string]: string; }[] | any ) => {
|
391
423
|
const hasOptionsChild = React.Children.toArray(props.children).some(
|
392
|
-
(child
|
424
|
+
(child) => React.isValidElement(child) && child.type === MultiLevelSelect.Options
|
393
425
|
);
|
394
426
|
|
395
427
|
if (hasOptionsChild) {
|
396
428
|
return React.Children.map(props.children, (child) => {
|
397
|
-
if (child.type === MultiLevelSelect.Options) {
|
429
|
+
if (React.isValidElement(child) && child.type === MultiLevelSelect.Options) {
|
398
430
|
return React.cloneElement(child, { items });
|
399
431
|
}
|
400
432
|
return null;
|
@@ -416,6 +448,12 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
416
448
|
className={classes}
|
417
449
|
id={id}
|
418
450
|
>
|
451
|
+
{label &&
|
452
|
+
<Caption
|
453
|
+
marginBottom="xs"
|
454
|
+
text={label}
|
455
|
+
/>
|
456
|
+
}
|
419
457
|
<MultiLevelSelectContext.Provider value={{
|
420
458
|
variant,
|
421
459
|
inputName,
|
@@ -439,6 +477,7 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
439
477
|
disabled={disabled}
|
440
478
|
key={selectedItem.id}
|
441
479
|
name={`${name}[]`}
|
480
|
+
required={required}
|
442
481
|
type="hidden"
|
443
482
|
value={selectedItem.id}
|
444
483
|
/>
|
@@ -453,6 +492,20 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
453
492
|
disabled={disabled}
|
454
493
|
key={item.id}
|
455
494
|
name={`${name}[]`}
|
495
|
+
required={required}
|
496
|
+
type="hidden"
|
497
|
+
value={item.id}
|
498
|
+
/>
|
499
|
+
))
|
500
|
+
: null}
|
501
|
+
|
502
|
+
{!returnAllSelected
|
503
|
+
? defaultReturn.map((item) => (
|
504
|
+
<input
|
505
|
+
disabled={disabled}
|
506
|
+
key={item.id}
|
507
|
+
name={`${name}[]`}
|
508
|
+
required={required}
|
456
509
|
type="hidden"
|
457
510
|
value={item.id}
|
458
511
|
/>
|
@@ -513,6 +566,7 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
513
566
|
} selected`
|
514
567
|
: "Start typing..."
|
515
568
|
}
|
569
|
+
required={required}
|
516
570
|
value={singleSelectedItem.value || filterItem}
|
517
571
|
/>
|
518
572
|
</div>
|
@@ -545,10 +599,18 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
|
|
545
599
|
</div>
|
546
600
|
</div>
|
547
601
|
</MultiLevelSelectContext.Provider>
|
602
|
+
{error &&
|
603
|
+
<Body
|
604
|
+
dark={props.dark}
|
605
|
+
status="negative"
|
606
|
+
text={error}
|
607
|
+
/>
|
608
|
+
}
|
548
609
|
</div>
|
549
610
|
);
|
550
|
-
};
|
611
|
+
}) as MultiLevelSelectComponent;
|
551
612
|
|
613
|
+
MultiLevelSelect.displayName = "MultiLevelSelect";
|
552
614
|
MultiLevelSelect.Options = MultiLevelSelectOptions;
|
553
615
|
|
554
616
|
export default MultiLevelSelect;
|
data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options.html.erb
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
<% treeData = [{
|
2
|
+
label: "Power Home Remodeling",
|
3
|
+
value: "Power Home Remodeling",
|
4
|
+
id: "powerhome1",
|
5
|
+
expanded: true,
|
6
|
+
children: [
|
7
|
+
{
|
8
|
+
label: "People",
|
9
|
+
value: "People",
|
10
|
+
id: "people1",
|
11
|
+
expanded: true,
|
12
|
+
children: [
|
13
|
+
{
|
14
|
+
label: "Talent Acquisition",
|
15
|
+
value: "Talent Acquisition",
|
16
|
+
id: "talent1",
|
17
|
+
disabled: true,
|
18
|
+
},
|
19
|
+
{
|
20
|
+
label: "Business Affairs",
|
21
|
+
value: "Business Affairs",
|
22
|
+
id: "business1",
|
23
|
+
children: [
|
24
|
+
{
|
25
|
+
label: "Initiatives",
|
26
|
+
value: "Initiatives",
|
27
|
+
id: "initiative1",
|
28
|
+
disabled: true,
|
29
|
+
},
|
30
|
+
{
|
31
|
+
label: "Learning & Development",
|
32
|
+
value: "Learning & Development",
|
33
|
+
id: "development1",
|
34
|
+
},
|
35
|
+
],
|
36
|
+
},
|
37
|
+
{
|
38
|
+
label: "People Experience",
|
39
|
+
value: "People Experience",
|
40
|
+
id: "experience1",
|
41
|
+
},
|
42
|
+
],
|
43
|
+
},
|
44
|
+
{
|
45
|
+
label: "Contact Center",
|
46
|
+
value: "Contact Center",
|
47
|
+
id: "contact1",
|
48
|
+
children: [
|
49
|
+
{
|
50
|
+
label: "Appointment Management",
|
51
|
+
value: "Appointment Management",
|
52
|
+
id: "appointment1",
|
53
|
+
},
|
54
|
+
{
|
55
|
+
label: "Customer Service",
|
56
|
+
value: "Customer Service",
|
57
|
+
id: "customer1",
|
58
|
+
disabled: true,
|
59
|
+
},
|
60
|
+
{
|
61
|
+
label: "Energy",
|
62
|
+
value: "Energy",
|
63
|
+
id: "energy1",
|
64
|
+
},
|
65
|
+
],
|
66
|
+
},
|
67
|
+
],
|
68
|
+
}] %>
|
69
|
+
|
70
|
+
|
71
|
+
<%= pb_rails("multi_level_select", props: {
|
72
|
+
id: "multi-level-select-disabled-options-rails",
|
73
|
+
name: "disabled_options",
|
74
|
+
return_all_selected: true,
|
75
|
+
tree_data: treeData
|
76
|
+
}) %>
|
@@ -0,0 +1,94 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import MultiLevelSelect from "../_multi_level_select";
|
3
|
+
|
4
|
+
const treeData = [
|
5
|
+
{
|
6
|
+
label: "Power Home Remodeling",
|
7
|
+
value: "Power Home Remodeling",
|
8
|
+
id: "powerhome1",
|
9
|
+
expanded: true,
|
10
|
+
children: [
|
11
|
+
{
|
12
|
+
label: "People",
|
13
|
+
value: "People",
|
14
|
+
id: "people1",
|
15
|
+
expanded: true,
|
16
|
+
children: [
|
17
|
+
{
|
18
|
+
label: "Talent Acquisition",
|
19
|
+
value: "Talent Acquisition",
|
20
|
+
id: "talent1",
|
21
|
+
disabled: true,
|
22
|
+
},
|
23
|
+
{
|
24
|
+
label: "Business Affairs",
|
25
|
+
value: "Business Affairs",
|
26
|
+
id: "business1",
|
27
|
+
children: [
|
28
|
+
{
|
29
|
+
label: "Initiatives",
|
30
|
+
value: "Initiatives",
|
31
|
+
id: "initiative1",
|
32
|
+
disabled: true,
|
33
|
+
},
|
34
|
+
{
|
35
|
+
label: "Learning & Development",
|
36
|
+
value: "Learning & Development",
|
37
|
+
id: "development1",
|
38
|
+
},
|
39
|
+
],
|
40
|
+
},
|
41
|
+
{
|
42
|
+
label: "People Experience",
|
43
|
+
value: "People Experience",
|
44
|
+
id: "experience1",
|
45
|
+
},
|
46
|
+
],
|
47
|
+
},
|
48
|
+
{
|
49
|
+
label: "Contact Center",
|
50
|
+
value: "Contact Center",
|
51
|
+
id: "contact1",
|
52
|
+
children: [
|
53
|
+
{
|
54
|
+
label: "Appointment Management",
|
55
|
+
value: "Appointment Management",
|
56
|
+
id: "appointment1",
|
57
|
+
},
|
58
|
+
{
|
59
|
+
label: "Customer Service",
|
60
|
+
value: "Customer Service",
|
61
|
+
id: "customer1",
|
62
|
+
disabled: true,
|
63
|
+
},
|
64
|
+
{
|
65
|
+
label: "Energy",
|
66
|
+
value: "Energy",
|
67
|
+
id: "energy1",
|
68
|
+
},
|
69
|
+
],
|
70
|
+
},
|
71
|
+
],
|
72
|
+
},
|
73
|
+
];
|
74
|
+
|
75
|
+
const MultiLevelSelectDisabledOptions = (props) => {
|
76
|
+
return (
|
77
|
+
<div>
|
78
|
+
<MultiLevelSelect
|
79
|
+
id='multiselect-disabled-options'
|
80
|
+
onSelect={(selectedNodes) =>
|
81
|
+
console.log(
|
82
|
+
"Selected Items",
|
83
|
+
selectedNodes
|
84
|
+
)
|
85
|
+
}
|
86
|
+
returnAllSelected
|
87
|
+
treeData={treeData}
|
88
|
+
{...props}
|
89
|
+
/>
|
90
|
+
</div>
|
91
|
+
)
|
92
|
+
};
|
93
|
+
|
94
|
+
export default MultiLevelSelectDisabledOptions;
|
@@ -0,0 +1 @@
|
|
1
|
+
individual items can also be disabled by including the `disabled:true` within the object on the treeData for the `returnAllSelected`/`return_all_selected` variant. As noted above, this variant will return data on all checked nodes from the dropdown, irrespective of whether it is a parent or child node.
|
@@ -0,0 +1,75 @@
|
|
1
|
+
<% treeData = [{
|
2
|
+
label: "Power Home Remodeling",
|
3
|
+
value: "Power Home Remodeling",
|
4
|
+
id: "powerhome1",
|
5
|
+
expanded: true,
|
6
|
+
children: [
|
7
|
+
{
|
8
|
+
label: "People",
|
9
|
+
value: "People",
|
10
|
+
id: "people1",
|
11
|
+
expanded: true,
|
12
|
+
children: [
|
13
|
+
{
|
14
|
+
label: "Talent Acquisition",
|
15
|
+
value: "Talent Acquisition",
|
16
|
+
id: "talent1",
|
17
|
+
disabled: true,
|
18
|
+
},
|
19
|
+
{
|
20
|
+
label: "Business Affairs",
|
21
|
+
value: "Business Affairs",
|
22
|
+
id: "business1",
|
23
|
+
children: [
|
24
|
+
{
|
25
|
+
label: "Initiatives",
|
26
|
+
value: "Initiatives",
|
27
|
+
id: "initiative1",
|
28
|
+
disabled: true,
|
29
|
+
},
|
30
|
+
{
|
31
|
+
label: "Learning & Development",
|
32
|
+
value: "Learning & Development",
|
33
|
+
id: "development1",
|
34
|
+
},
|
35
|
+
],
|
36
|
+
},
|
37
|
+
{
|
38
|
+
label: "People Experience",
|
39
|
+
value: "People Experience",
|
40
|
+
id: "experience1",
|
41
|
+
},
|
42
|
+
],
|
43
|
+
},
|
44
|
+
{
|
45
|
+
label: "Contact Center",
|
46
|
+
value: "Contact Center",
|
47
|
+
id: "contact1",
|
48
|
+
children: [
|
49
|
+
{
|
50
|
+
label: "Appointment Management",
|
51
|
+
value: "Appointment Management",
|
52
|
+
id: "appointment1",
|
53
|
+
},
|
54
|
+
{
|
55
|
+
label: "Customer Service",
|
56
|
+
value: "Customer Service",
|
57
|
+
id: "customer1",
|
58
|
+
disabled: true,
|
59
|
+
},
|
60
|
+
{
|
61
|
+
label: "Energy",
|
62
|
+
value: "Energy",
|
63
|
+
id: "energy1",
|
64
|
+
},
|
65
|
+
],
|
66
|
+
},
|
67
|
+
],
|
68
|
+
}] %>
|
69
|
+
|
70
|
+
|
71
|
+
<%= pb_rails("multi_level_select", props: {
|
72
|
+
id: "multi-level-select-disabled-options-default-rails",
|
73
|
+
name: "disabled_options_default",
|
74
|
+
tree_data: treeData
|
75
|
+
}) %>
|
@@ -0,0 +1,93 @@
|
|
1
|
+
import React from "react";
|
2
|
+
import MultiLevelSelect from "../_multi_level_select";
|
3
|
+
|
4
|
+
const treeData = [
|
5
|
+
{
|
6
|
+
label: "Power Home Remodeling",
|
7
|
+
value: "Power Home Remodeling",
|
8
|
+
id: "powerhome1",
|
9
|
+
expanded: true,
|
10
|
+
children: [
|
11
|
+
{
|
12
|
+
label: "People",
|
13
|
+
value: "People",
|
14
|
+
id: "people1",
|
15
|
+
expanded: true,
|
16
|
+
children: [
|
17
|
+
{
|
18
|
+
label: "Talent Acquisition",
|
19
|
+
value: "Talent Acquisition",
|
20
|
+
id: "talent1",
|
21
|
+
disabled: true,
|
22
|
+
},
|
23
|
+
{
|
24
|
+
label: "Business Affairs",
|
25
|
+
value: "Business Affairs",
|
26
|
+
id: "business1",
|
27
|
+
children: [
|
28
|
+
{
|
29
|
+
label: "Initiatives",
|
30
|
+
value: "Initiatives",
|
31
|
+
id: "initiative1",
|
32
|
+
disabled: true,
|
33
|
+
},
|
34
|
+
{
|
35
|
+
label: "Learning & Development",
|
36
|
+
value: "Learning & Development",
|
37
|
+
id: "development1",
|
38
|
+
},
|
39
|
+
],
|
40
|
+
},
|
41
|
+
{
|
42
|
+
label: "People Experience",
|
43
|
+
value: "People Experience",
|
44
|
+
id: "experience1",
|
45
|
+
},
|
46
|
+
],
|
47
|
+
},
|
48
|
+
{
|
49
|
+
label: "Contact Center",
|
50
|
+
value: "Contact Center",
|
51
|
+
id: "contact1",
|
52
|
+
children: [
|
53
|
+
{
|
54
|
+
label: "Appointment Management",
|
55
|
+
value: "Appointment Management",
|
56
|
+
id: "appointment1",
|
57
|
+
},
|
58
|
+
{
|
59
|
+
label: "Customer Service",
|
60
|
+
value: "Customer Service",
|
61
|
+
id: "customer1",
|
62
|
+
disabled: true,
|
63
|
+
},
|
64
|
+
{
|
65
|
+
label: "Energy",
|
66
|
+
value: "Energy",
|
67
|
+
id: "energy1",
|
68
|
+
},
|
69
|
+
],
|
70
|
+
},
|
71
|
+
],
|
72
|
+
},
|
73
|
+
];
|
74
|
+
|
75
|
+
const MultiLevelSelectDisabledOptionsDefault = (props) => {
|
76
|
+
return (
|
77
|
+
<div>
|
78
|
+
<MultiLevelSelect
|
79
|
+
id='multiselect-disabled-options-default'
|
80
|
+
onSelect={(selectedNodes) =>
|
81
|
+
console.log(
|
82
|
+
"Selected Items",
|
83
|
+
selectedNodes
|
84
|
+
)
|
85
|
+
}
|
86
|
+
treeData={treeData}
|
87
|
+
{...props}
|
88
|
+
/>
|
89
|
+
</div>
|
90
|
+
)
|
91
|
+
};
|
92
|
+
|
93
|
+
export default MultiLevelSelectDisabledOptionsDefault;
|
data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_disabled_options_default.md
ADDED
@@ -0,0 +1,3 @@
|
|
1
|
+
To disable individual items in the treeData, include `disabled:true` within the object on the treeData that you want disabled. See the code snippet below for an example of how to do this.
|
2
|
+
|
3
|
+
If a parent is selected, the parent will be returned in the selected items list, even if it has disabled children.
|
@@ -0,0 +1,75 @@
|
|
1
|
+
<% treeData = [{
|
2
|
+
label: "Power Home Remodeling",
|
3
|
+
value: "Power Home Remodeling",
|
4
|
+
id: "powerhome1",
|
5
|
+
expanded: true,
|
6
|
+
children: [
|
7
|
+
{
|
8
|
+
label: "People",
|
9
|
+
value: "People",
|
10
|
+
id: "people1",
|
11
|
+
expanded: true,
|
12
|
+
children: [
|
13
|
+
{
|
14
|
+
label: "Talent Acquisition",
|
15
|
+
value: "Talent Acquisition",
|
16
|
+
id: "talent1",
|
17
|
+
},
|
18
|
+
{
|
19
|
+
label: "Business Affairs",
|
20
|
+
value: "Business Affairs",
|
21
|
+
id: "business1",
|
22
|
+
expanded: true,
|
23
|
+
disabled: true,
|
24
|
+
children: [
|
25
|
+
{
|
26
|
+
label: "Initiatives",
|
27
|
+
value: "Initiatives",
|
28
|
+
id: "initiative1",
|
29
|
+
},
|
30
|
+
{
|
31
|
+
label: "Learning & Development",
|
32
|
+
value: "Learning & Development",
|
33
|
+
id: "development1",
|
34
|
+
},
|
35
|
+
],
|
36
|
+
},
|
37
|
+
{
|
38
|
+
label: "People Experience",
|
39
|
+
value: "People Experience",
|
40
|
+
id: "experience1",
|
41
|
+
},
|
42
|
+
],
|
43
|
+
},
|
44
|
+
{
|
45
|
+
label: "Contact Center",
|
46
|
+
value: "Contact Center",
|
47
|
+
id: "contact1",
|
48
|
+
children: [
|
49
|
+
{
|
50
|
+
label: "Appointment Management",
|
51
|
+
value: "Appointment Management",
|
52
|
+
id: "appointment1",
|
53
|
+
},
|
54
|
+
{
|
55
|
+
label: "Customer Service",
|
56
|
+
value: "Customer Service",
|
57
|
+
id: "customer1",
|
58
|
+
},
|
59
|
+
{
|
60
|
+
label: "Energy",
|
61
|
+
value: "Energy",
|
62
|
+
id: "energy1",
|
63
|
+
},
|
64
|
+
],
|
65
|
+
},
|
66
|
+
],
|
67
|
+
}] %>
|
68
|
+
|
69
|
+
|
70
|
+
<%= pb_rails("multi_level_select", props: {
|
71
|
+
id: "mls-disabled-options-parent-rails",
|
72
|
+
name: "disabled_options_parent",
|
73
|
+
return_all_selected: true,
|
74
|
+
tree_data: treeData
|
75
|
+
}) %>
|