playbook_ui 13.27.0 → 13.28.0.pre.alpha.PBNTR297gradientoverlay3029
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 +3 -3
- data/app/pb_kits/playbook/index.js +3 -0
- data/app/pb_kits/playbook/pb_advanced_table/advanced_table.html.erb +3 -7
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_beta_subrow_headers.html.erb +40 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_beta_subrow_headers.md +3 -0
- data/app/pb_kits/playbook/pb_advanced_table/docs/_advanced_table_subrow_headers.md +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/docs/example.yml +1 -1
- data/app/pb_kits/playbook/pb_advanced_table/table_body.html.erb +2 -6
- data/app/pb_kits/playbook/pb_advanced_table/table_body.rb +14 -4
- data/app/pb_kits/playbook/pb_advanced_table/table_header.html.erb +11 -7
- data/app/pb_kits/playbook/pb_advanced_table/table_row.html.erb +2 -6
- data/app/pb_kits/playbook/pb_advanced_table/table_row.rb +2 -0
- data/app/pb_kits/playbook/pb_advanced_table/table_subrow_header.html.erb +34 -0
- data/app/pb_kits/playbook/pb_advanced_table/table_subrow_header.rb +31 -0
- data/app/pb_kits/playbook/pb_avatar/Utilities/GetPlacementPropsHelper.tsx +16 -0
- data/app/pb_kits/playbook/pb_avatar/_avatar.scss +16 -0
- data/app/pb_kits/playbook/pb_avatar/avatar.html.erb +1 -1
- data/app/pb_kits/playbook/pb_avatar/avatar.rb +4 -0
- data/app/pb_kits/playbook/pb_avatar/avatar.test.js +47 -0
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_badge_component_overlay.html.erb +46 -66
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_badge_component_overlay.jsx +8 -29
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_badge_component_overlay.md +3 -0
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_circle_icon_component_overlay.html.erb +13 -33
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_circle_icon_component_overlay.jsx +48 -67
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_circle_icon_component_overlay.md +3 -0
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_default.jsx +0 -20
- data/app/pb_kits/playbook/pb_avatar/docs/example.yml +2 -2
- data/app/pb_kits/playbook/pb_avatar_action_button/avatar_action_button.html.erb +1 -6
- data/app/pb_kits/playbook/pb_badge/badge.html.erb +1 -6
- data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.tsx +4 -1
- data/app/pb_kits/playbook/pb_bar_graph/barGraph.test.js +31 -0
- data/app/pb_kits/playbook/pb_bar_graph/bar_graph.rb +16 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom.md +2 -1
- data/app/pb_kits/playbook/pb_bar_graph/docs/{_bar_graph_custom.html.erb → _bar_graph_custom_rails.html.erb} +3 -3
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_custom_rails.md +2 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/example.yml +1 -1
- data/app/pb_kits/playbook/pb_body/_body.scss +3 -0
- data/app/pb_kits/playbook/pb_body/_body_mixins.scss +1 -1
- data/app/pb_kits/playbook/pb_button/_button_mixins.scss +4 -3
- data/app/pb_kits/playbook/pb_button_toolbar/button_toolbar.html.erb +1 -6
- data/app/pb_kits/playbook/pb_caption/_caption_mixin.scss +1 -1
- data/app/pb_kits/playbook/pb_card/_card_mixin.scss +7 -1
- data/app/pb_kits/playbook/pb_card/card.rb +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_background.html.erb +20 -0
- data/app/pb_kits/playbook/pb_card/docs/_card_background.jsx +41 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_background.md +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_header.html.erb +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_header.md +1 -1
- data/app/pb_kits/playbook/pb_card/docs/_card_highlight.md +1 -1
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.scss +1 -2
- data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.tsx +9 -3
- data/app/pb_kits/playbook/pb_circle_chart/circleChart.test.js +45 -0
- data/app/pb_kits/playbook/pb_circle_chart/circle_chart.rb +22 -1
- data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.html.erb +1 -6
- data/app/pb_kits/playbook/pb_collapsible/__snapshots__/collapsible.test.js.snap +53 -0
- data/app/pb_kits/playbook/pb_collapsible/_collapsible.tsx +33 -16
- data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleIcon.tsx +92 -0
- data/app/pb_kits/playbook/pb_collapsible/child_kits/CollapsibleMain.tsx +3 -75
- data/app/pb_kits/playbook/pb_collapsible/collapsible.html.erb +1 -6
- data/app/pb_kits/playbook/pb_collapsible/collapsible.test.js +24 -0
- data/app/pb_kits/playbook/pb_collapsible/collapsible_content.html.erb +1 -6
- data/app/pb_kits/playbook/pb_collapsible/collapsible_icon.html.erb +15 -0
- data/app/pb_kits/playbook/pb_collapsible/collapsible_icon.rb +37 -0
- data/app/pb_kits/playbook/pb_collapsible/collapsible_main.html.erb +1 -6
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main.jsx +72 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main.md +3 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_rails.html.erb +19 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_rails.md +3 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_with_icon.jsx +73 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_with_icon.md +3 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_with_icon_rails.html.erb +20 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/_collapsible_custom_main_with_icon_rails.md +3 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/example.yml +7 -0
- data/app/pb_kits/playbook/pb_collapsible/docs/index.js +3 -1
- data/app/pb_kits/playbook/pb_collapsible/index.js +16 -6
- data/app/pb_kits/playbook/pb_contact/contact.html.erb +1 -6
- data/app/pb_kits/playbook/pb_currency/currency.html.erb +1 -6
- data/app/pb_kits/playbook/pb_dashboard/pbChartsDarkTheme.ts +7 -1
- data/app/pb_kits/playbook/pb_dashboard/pbChartsLightTheme.ts +9 -1
- data/app/pb_kits/playbook/pb_dashboard_value/dashboard_value.html.erb +1 -6
- data/app/pb_kits/playbook/pb_date/date.html.erb +1 -6
- data/app/pb_kits/playbook/pb_date_range_inline/date_range_inline.html.erb +1 -5
- data/app/pb_kits/playbook/pb_date_range_inline/docs/_date_range_inline_default_swift.md +61 -0
- data/app/pb_kits/playbook/pb_date_range_inline/docs/_date_range_inline_props_swift.md +11 -0
- data/app/pb_kits/playbook/pb_date_range_inline/docs/example.yml +4 -1
- data/app/pb_kits/playbook/pb_date_range_stacked/date_range_stacked.html.erb +1 -5
- data/app/pb_kits/playbook/pb_date_stacked/date_stacked.html.erb +1 -5
- data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_bold_swift.md +32 -0
- data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_default_swift.md +17 -0
- data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_not_current_year_swift.md +19 -0
- data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_props_swift.md +10 -0
- data/app/pb_kits/playbook/pb_date_stacked/docs/_date_stacked_reversed_swift.md +17 -0
- data/app/pb_kits/playbook/pb_date_stacked/docs/example.yml +7 -0
- data/app/pb_kits/playbook/pb_date_time/date_time.html.erb +1 -6
- data/app/pb_kits/playbook/pb_date_time/docs/_date_time_alignment_swift.md +39 -0
- data/app/pb_kits/playbook/pb_date_time/docs/_date_time_default_swift.md +39 -0
- data/app/pb_kits/playbook/pb_date_time/docs/_date_time_props_swift.md +15 -0
- data/app/pb_kits/playbook/pb_date_time/docs/_date_time_size_swift.md +78 -0
- data/app/pb_kits/playbook/pb_date_time/docs/example.yml +6 -0
- data/app/pb_kits/playbook/pb_date_time_stacked/date_time_stacked.html.erb +1 -6
- data/app/pb_kits/playbook/pb_date_year_stacked/date_year_stacked.html.erb +1 -5
- data/app/pb_kits/playbook/pb_detail/_detail_mixins.scss +1 -1
- data/app/pb_kits/playbook/pb_docs/kit_example.html.erb +3 -3
- data/app/pb_kits/playbook/pb_draggable/_draggable.scss +10 -0
- data/app/pb_kits/playbook/pb_draggable/_draggable.tsx +53 -0
- data/app/pb_kits/playbook/pb_draggable/context/index.tsx +92 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_default.jsx +53 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_multiple_containers.jsx +159 -0
- data/app/pb_kits/playbook/pb_draggable/docs/_draggable_with_cards.jsx +121 -0
- data/app/pb_kits/playbook/pb_draggable/docs/example.yml +9 -0
- data/app/pb_kits/playbook/pb_draggable/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_draggable/draggable.test.jsx +65 -0
- data/app/pb_kits/playbook/pb_draggable/subcomponents/DraggableContainer.tsx +54 -0
- data/app/pb_kits/playbook/pb_draggable/subcomponents/DraggableItem.tsx +57 -0
- data/app/pb_kits/playbook/pb_dropdown/_dropdown.scss +6 -1
- data/app/pb_kits/playbook/pb_dropdown/_dropdown.tsx +5 -6
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default.html.erb +3 -3
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_default.md +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subcomponent_structure.md +5 -6
- data/app/pb_kits/playbook/pb_dropdown/docs/{_dropdown_subcomponent_structure.html.erb → _dropdown_subcomponent_structure_rails.html.erb} +3 -3
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_subcomponent_structure_rails.md +6 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.jsx +6 -3
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display.md +3 -3
- data/app/pb_kits/playbook/pb_dropdown/docs/{_dropdown_with_custom_display.html.erb → _dropdown_with_custom_display_rails.html.erb} +11 -6
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_display_rails.md +5 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_options.jsx +5 -2
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_options.md +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/{_dropdown_with_custom_options.html.erb → _dropdown_with_custom_options_rails.html.erb} +16 -11
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_options_rails.md +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_padding.html.erb +3 -3
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_padding.md +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger.jsx +5 -2
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger.md +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/{_dropdown_with_custom_trigger.html.erb → _dropdown_with_custom_trigger_rails.html.erb} +16 -11
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_custom_trigger_rails.md +1 -0
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.html.erb +3 -3
- data/app/pb_kits/playbook/pb_dropdown/docs/_dropdown_with_label.md +1 -1
- data/app/pb_kits/playbook/pb_dropdown/docs/example.yml +6 -6
- data/app/pb_kits/playbook/pb_dropdown/dropdown.html.erb +1 -0
- data/app/pb_kits/playbook/pb_dropdown/dropdown.rb +1 -0
- data/app/pb_kits/playbook/pb_dropdown/dropdown.test.jsx +1 -1
- data/app/pb_kits/playbook/pb_dropdown/dropdown_option.html.erb +3 -9
- data/app/pb_kits/playbook/pb_dropdown/dropdown_option.rb +2 -6
- data/app/pb_kits/playbook/pb_dropdown/index.js +2 -1
- data/app/pb_kits/playbook/pb_dropdown/subcomponents/DropdownOption.tsx +6 -14
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_children_swift.md +23 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_close_swift.md +7 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_default_swift.md +9 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_dismiss_with_timer_swift.md +22 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_multi_line_swift.md +9 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_positions_swift.md +62 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/_fixed_confirmation_toast_props_swift.md +8 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/docs/example.yml +9 -0
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/fixed_confirmation_toast.html.erb +1 -6
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with.html.erb +11 -1
- data/app/pb_kits/playbook/pb_form/docs/_form_form_with_validate.html.erb +1 -1
- data/app/pb_kits/playbook/pb_form_group/_form_group.scss +17 -2
- data/app/pb_kits/playbook/pb_gauge/_gauge.tsx +4 -1
- data/app/pb_kits/playbook/pb_gauge/gauge.rb +6 -1
- data/app/pb_kits/playbook/pb_gauge/gauge.test.js +35 -0
- data/app/pb_kits/playbook/pb_icon_circle/icon_circle.html.erb +1 -6
- data/app/pb_kits/playbook/pb_icon_stat_value/icon_stat_value.html.erb +1 -6
- data/app/pb_kits/playbook/pb_icon_value/icon_value.html.erb +1 -6
- data/app/pb_kits/playbook/pb_label_pill/label_pill.html.erb +1 -6
- data/app/pb_kits/playbook/pb_label_value/label_value.html.erb +1 -6
- data/app/pb_kits/playbook/pb_line_graph/_line_graph.tsx +8 -2
- data/app/pb_kits/playbook/pb_line_graph/lineGraph.test.js +52 -0
- data/app/pb_kits/playbook/pb_line_graph/line_graph.rb +22 -1
- data/app/pb_kits/playbook/pb_loading_inline/loading_inline.html.erb +1 -5
- data/app/pb_kits/playbook/pb_message/message_mention.html.erb +6 -6
- data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.scss +8 -0
- data/app/pb_kits/playbook/pb_multiple_users/multiple_users.html.erb +1 -6
- data/app/pb_kits/playbook/pb_multiple_users_stacked/multiple_users_stacked.html.erb +1 -6
- data/app/pb_kits/playbook/pb_overlay/_overlay.scss +12 -0
- data/app/pb_kits/playbook/pb_overlay/_overlay.tsx +93 -0
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_default.jsx +40 -0
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_default.md +7 -0
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_multi_directional.jsx +36 -0
- data/app/pb_kits/playbook/pb_overlay/docs/_overlay_multi_directional.md +5 -0
- data/app/pb_kits/playbook/pb_overlay/docs/example.yml +4 -0
- data/app/pb_kits/playbook/pb_overlay/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_overlay/overlay.test.jsx +66 -0
- data/app/pb_kits/playbook/pb_pagination/_pagination.scss +1 -1
- data/app/pb_kits/playbook/pb_pagination/pagination.html.erb +1 -6
- data/app/pb_kits/playbook/pb_person/person.html.erb +1 -6
- data/app/pb_kits/playbook/pb_person_contact/person_contact.html.erb +1 -6
- data/app/pb_kits/playbook/pb_pill/docs/_description.md +1 -1
- data/app/pb_kits/playbook/pb_pill/pill.html.erb +1 -6
- data/app/pb_kits/playbook/pb_section_separator/section_separator.html.erb +1 -6
- data/app/pb_kits/playbook/pb_select/_select.scss +8 -0
- data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.scss +1 -0
- data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.tsx +30 -32
- data/app/pb_kits/playbook/pb_selectable_card/selectable_card.html.erb +0 -2
- data/app/pb_kits/playbook/pb_source/source.html.erb +1 -5
- data/app/pb_kits/playbook/pb_stat_change/stat_change.html.erb +1 -5
- data/app/pb_kits/playbook/pb_stat_value/stat_value.html.erb +1 -5
- data/app/pb_kits/playbook/pb_table/_table.tsx +5 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_column.jsx +33 -32
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_column.md +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_column_rails.md +2 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row.jsx +33 -33
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row.md +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row_rails.html.erb +34 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_row_rails.md +2 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data.jsx +51 -50
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data.md +1 -1
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data_rails.html.erb +54 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data_rails.md +2 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row.jsx +37 -38
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row_rails.html.erb +53 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row_rails.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/{_table_alignment_row.html.erb → _table_outer_padding.html.erb} +7 -7
- data/app/pb_kits/playbook/pb_table/docs/_table_outer_padding.jsx +76 -0
- data/app/pb_kits/playbook/pb_table/docs/_table_outer_padding.md +1 -0
- data/app/pb_kits/playbook/pb_table/docs/example.yml +9 -9
- data/app/pb_kits/playbook/pb_table/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_table/styles/_all.scss +1 -0
- data/app/pb_kits/playbook/pb_table/styles/_outer_padding.scss +21 -0
- data/app/pb_kits/playbook/pb_table/table.rb +14 -1
- data/app/pb_kits/playbook/pb_table/table.test.js +5 -1
- data/app/pb_kits/playbook/pb_text_input/_text_input.scss +19 -0
- data/app/pb_kits/playbook/pb_time_range_inline/time_range_inline.html.erb +1 -5
- data/app/pb_kits/playbook/pb_time_stacked/time_stacked.html.erb +1 -5
- data/app/pb_kits/playbook/pb_timeline/item.html.erb +1 -5
- data/app/pb_kits/playbook/pb_timeline/timeline.html.erb +1 -5
- data/app/pb_kits/playbook/pb_timestamp/timestamp.html.erb +1 -6
- data/app/pb_kits/playbook/pb_title/_title.scss +5 -1
- data/app/pb_kits/playbook/pb_title_count/title_count.html.erb +1 -6
- data/app/pb_kits/playbook/pb_title_detail/title_detail.html.erb +1 -5
- data/app/pb_kits/playbook/pb_tooltip/index.js +1 -0
- data/app/pb_kits/playbook/pb_treemap_chart/_treemap_chart.tsx +12 -9
- data/app/pb_kits/playbook/pb_treemap_chart/treemapChart.test.js +61 -0
- data/app/pb_kits/playbook/pb_treemap_chart/treemap_chart.rb +6 -1
- data/app/pb_kits/playbook/pb_weekday_stacked/weekday_stacked.html.erb +1 -6
- data/app/pb_kits/playbook/playbook-doc.js +4 -0
- data/app/pb_kits/playbook/tokens/_titles.scss +5 -1
- data/app/pb_kits/playbook/tokens/_vertical_align.scss +18 -0
- data/app/pb_kits/playbook/utilities/_vertical_align.scss +16 -0
- data/app/pb_kits/playbook/utilities/globalProps.ts +12 -1
- data/dist/menu.yml +9 -4
- data/dist/playbook-rails.js +6 -6
- data/lib/playbook/classnames.rb +1 -0
- data/lib/playbook/forms/builder/dropdown_field.rb +14 -0
- data/lib/playbook/forms/builder/phone_number_field.rb +12 -0
- data/lib/playbook/forms/builder.rb +2 -0
- data/lib/playbook/kit_base.rb +3 -1
- data/lib/playbook/version.rb +2 -2
- data/lib/playbook/vertical_align.rb +37 -0
- metadata +94 -14
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_data.html.erb +0 -63
- data/app/pb_kits/playbook/pb_table/docs/_table_alignment_shift_row.html.erb +0 -52
- /data/app/pb_kits/playbook/pb_table/docs/{_table_alignment_column.html.erb → _table_alignment_column_rails.html.erb} +0 -0
@@ -9,6 +9,7 @@ module Playbook
|
|
9
9
|
prop :axis_title
|
10
10
|
prop :chart_data, type: Playbook::Props::Array,
|
11
11
|
default: []
|
12
|
+
prop :custom_options, default: {}
|
12
13
|
prop :gradient, type: Playbook::Props::Boolean,
|
13
14
|
default: false
|
14
15
|
prop :point_start, type: Playbook::Props::Numeric
|
@@ -38,7 +39,7 @@ module Playbook
|
|
38
39
|
gradient ? "area" : "line"
|
39
40
|
end
|
40
41
|
|
41
|
-
def
|
42
|
+
def standard_options
|
42
43
|
{
|
43
44
|
align: align,
|
44
45
|
id: id,
|
@@ -64,6 +65,26 @@ module Playbook
|
|
64
65
|
}
|
65
66
|
end
|
66
67
|
|
68
|
+
def chart_options
|
69
|
+
standard_options.deep_merge(custom_options)
|
70
|
+
end
|
71
|
+
|
72
|
+
def vertical_align_props
|
73
|
+
if vertical_align
|
74
|
+
if object.vertical_align
|
75
|
+
original_result = super
|
76
|
+
class_to_remove = "vertical_align_#{object.vertical_align}"
|
77
|
+
|
78
|
+
modified_result = original_result.gsub(class_to_remove, "").strip
|
79
|
+
modified_result.empty? ? nil : modified_result
|
80
|
+
else
|
81
|
+
super
|
82
|
+
end
|
83
|
+
else
|
84
|
+
super
|
85
|
+
end
|
86
|
+
end
|
87
|
+
|
67
88
|
def classname
|
68
89
|
generate_classname("pb_line_graph")
|
69
90
|
end
|
@@ -1,8 +1,4 @@
|
|
1
|
-
<%=
|
2
|
-
id: object.id,
|
3
|
-
data: object.data,
|
4
|
-
class: object.classname,
|
5
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
6
2
|
|
7
3
|
<%= pb_rails("body", props: { color: "light", dark: object.dark }) do %>
|
8
4
|
<%= pb_rails("icon", props: { aria: { label: "loading icon" }, fixed_width: true, icon: "spinner", pulse: true }) %> <%= object.text %>
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<%= content_tag(:div,
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
id: object.id,
|
3
|
+
data: object.data,
|
4
|
+
class: object.classname,
|
5
|
+
aria: object.aria,
|
6
|
+
**combined_html_options) do %>
|
7
|
+
<%= content %>
|
8
8
|
<% end %>
|
@@ -35,6 +35,10 @@ $pb_multiple_users_size_xxs: map-get($avatar-sizes, "xxs");
|
|
35
35
|
margin-left: $pb_multiple_users_overlap;
|
36
36
|
margin-right: 0;
|
37
37
|
|
38
|
+
&:first-of-type {
|
39
|
+
margin-left: 0;
|
40
|
+
}
|
41
|
+
|
38
42
|
&.dark {
|
39
43
|
.avatar_wrapper {
|
40
44
|
border: $pb_multiple_users_border_size solid $bg_dark;
|
@@ -58,6 +62,10 @@ $pb_multiple_users_size_xxs: map-get($avatar-sizes, "xxs");
|
|
58
62
|
.pb_multiple_users_item {
|
59
63
|
margin-left: 0;
|
60
64
|
margin-right: $pb_multiple_users_overlap;
|
65
|
+
|
66
|
+
&:first-of-type {
|
67
|
+
margin-right: 0;
|
68
|
+
}
|
61
69
|
}
|
62
70
|
}
|
63
71
|
}
|
@@ -1,9 +1,4 @@
|
|
1
|
-
<%=
|
2
|
-
aria: object.aria,
|
3
|
-
class: object.classname,
|
4
|
-
data: object.data,
|
5
|
-
id: object.id,
|
6
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
7
2
|
<% object.users.take(object.display_count).each do |user| %>
|
8
3
|
<%= pb_rails("avatar", props: user.merge({size: object.size, classname: "pb_multiple_users_item", dark: object.dark}) ) %>
|
9
4
|
<% end %>
|
@@ -1,9 +1,4 @@
|
|
1
|
-
<%=
|
2
|
-
aria: object.aria,
|
3
|
-
class: object.classname,
|
4
|
-
data: object.data,
|
5
|
-
id: object.id,
|
6
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
7
2
|
<%= pb_rails("avatar", props: object.users[0].merge({size: "xs", classname: "pb_multiple_users_stacked_item", dark: object.dark}) ) %>
|
8
3
|
|
9
4
|
<% unless object.only_one %>
|
@@ -0,0 +1,93 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import classnames from 'classnames'
|
3
|
+
import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
|
4
|
+
import { globalProps } from '../utilities/globalProps'
|
5
|
+
import defaultColors from "../tokens/exports/_colors.scss";
|
6
|
+
|
7
|
+
type OverlayProps = {
|
8
|
+
aria?: { [key: string]: string },
|
9
|
+
className?: string,
|
10
|
+
children: React.ReactNode[] | React.ReactNode,
|
11
|
+
color: "white" | "bg_light" | "card_dark" | "bg_dark",
|
12
|
+
data?: { [key: string]: string },
|
13
|
+
htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
|
14
|
+
id?: string,
|
15
|
+
layout: { [key: string]: string },
|
16
|
+
}
|
17
|
+
|
18
|
+
const previousOverlayDirectionMap: { [key: string]: string } = {
|
19
|
+
"bottom": "to top",
|
20
|
+
"top": "to bottom",
|
21
|
+
"left-right": "to right",
|
22
|
+
"top-bottom": "to top",
|
23
|
+
}
|
24
|
+
|
25
|
+
const subsequentOverlayDirectionMap: { [key: string]: string } = {
|
26
|
+
"bottom": "to top",
|
27
|
+
"top": "to bottom",
|
28
|
+
"left-right": "to left",
|
29
|
+
"top-bottom": "to bottom",
|
30
|
+
}
|
31
|
+
|
32
|
+
const Overlay = (props: OverlayProps) => {
|
33
|
+
const {
|
34
|
+
aria = {},
|
35
|
+
className,
|
36
|
+
children,
|
37
|
+
color = "white",
|
38
|
+
data = {},
|
39
|
+
htmlOptions = {},
|
40
|
+
id,
|
41
|
+
layout = { "bottom": "100%" },
|
42
|
+
} = props
|
43
|
+
|
44
|
+
const ariaProps = buildAriaProps(aria)
|
45
|
+
const dataProps = buildDataProps(data)
|
46
|
+
const classes = classnames(buildCss('pb_overlay'), globalProps(props), className)
|
47
|
+
const htmlProps = buildHtmlProps(htmlOptions)
|
48
|
+
|
49
|
+
const getPosition = () => {
|
50
|
+
return Object.keys(layout)[0]
|
51
|
+
}
|
52
|
+
|
53
|
+
const getSize = () => {
|
54
|
+
return Object.values(layout)[0]
|
55
|
+
}
|
56
|
+
|
57
|
+
const getPreviousOverlayDirection = () => {
|
58
|
+
return previousOverlayDirectionMap[getPosition()]
|
59
|
+
}
|
60
|
+
|
61
|
+
const getSubsequentOverlayDirection = () => {
|
62
|
+
return subsequentOverlayDirectionMap[getPosition()]
|
63
|
+
}
|
64
|
+
|
65
|
+
const hasSubsequentOverlay = getPosition() === "left-right" || getPosition() === "top-bottom"
|
66
|
+
|
67
|
+
const previousOverlay = `linear-gradient(${getPreviousOverlayDirection()}, ${defaultColors[color]} 0%, transparent ${getSize()})`
|
68
|
+
const subsequentOverlay = `linear-gradient(${getSubsequentOverlayDirection()}, ${defaultColors[color]} 0%, transparent ${getSize()})`
|
69
|
+
|
70
|
+
return (
|
71
|
+
<div
|
72
|
+
{...ariaProps}
|
73
|
+
{...dataProps}
|
74
|
+
{...htmlProps}
|
75
|
+
className={classes}
|
76
|
+
id={id}
|
77
|
+
>
|
78
|
+
<div className="overlay-container">
|
79
|
+
<div className="overlay"
|
80
|
+
style={{ background: previousOverlay }} />
|
81
|
+
|
82
|
+
{children}
|
83
|
+
|
84
|
+
{ hasSubsequentOverlay &&
|
85
|
+
<div className="overlay"
|
86
|
+
style={{ background: subsequentOverlay }} />
|
87
|
+
}
|
88
|
+
</div>
|
89
|
+
</div>
|
90
|
+
)
|
91
|
+
}
|
92
|
+
|
93
|
+
export default Overlay
|
@@ -0,0 +1,40 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import {
|
3
|
+
Overlay,
|
4
|
+
Table,
|
5
|
+
} from '../..'
|
6
|
+
|
7
|
+
const TableExample = () => {
|
8
|
+
return (
|
9
|
+
<Table size="sm">
|
10
|
+
<thead>
|
11
|
+
<tr>
|
12
|
+
<th>{'Column 1'}</th>
|
13
|
+
<th>{'Column 2'}</th>
|
14
|
+
<th>{'Column 3'}</th>
|
15
|
+
<th>{'Column 4'}</th>
|
16
|
+
<th>{'Column 5'}</th>
|
17
|
+
</tr>
|
18
|
+
</thead>
|
19
|
+
<tbody>
|
20
|
+
{Array.from({ length: 7 }, (_, index) => (
|
21
|
+
<tr key={index}>
|
22
|
+
{Array.from({ length: 5 }, (_, columnIndex) => (
|
23
|
+
<td key={columnIndex}>{`Value ${columnIndex + 1}`}</td>
|
24
|
+
))}
|
25
|
+
</tr>
|
26
|
+
))}
|
27
|
+
</tbody>
|
28
|
+
</Table>
|
29
|
+
)
|
30
|
+
}
|
31
|
+
|
32
|
+
const OverlayDefault = () => (
|
33
|
+
<>
|
34
|
+
<Overlay>
|
35
|
+
<TableExample />
|
36
|
+
</Overlay>
|
37
|
+
</>
|
38
|
+
)
|
39
|
+
|
40
|
+
export default OverlayDefault
|
@@ -0,0 +1,7 @@
|
|
1
|
+
Overlays require a `color`, which sets the "start" (opaque) color of a gradient mask. Because this overlay is intended to reveal underlying content, the "end" color is fixed to transparent.
|
2
|
+
|
3
|
+
The optional `layout` prop accepts a `position` and a `size` as a key:value pair object.
|
4
|
+
|
5
|
+
The `position` prop sets the side where the `color` overlay starts. The direction of the overlay is always toward the opposite side of the position. For example, the default position of `bottom` starts the overlay on the bottom edge of your container and extends it toward the opposite side: the top.
|
6
|
+
|
7
|
+
The `size` prop accepts a percentage value as a string and literally translates to how much of the container is covered by the overlay. By default, `size` is set to `100%` so that your overlay covers the entire container with a smooth fade from `color` at its starting edge, fading to transparent and ending at the containers opposite edge.
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import {
|
3
|
+
Overlay,
|
4
|
+
Card,
|
5
|
+
Flex,
|
6
|
+
FlexItem,
|
7
|
+
} from '../..'
|
8
|
+
|
9
|
+
const InlineCardsExample = () => {
|
10
|
+
return (
|
11
|
+
<Flex
|
12
|
+
columnGap="lg"
|
13
|
+
orientation="row"
|
14
|
+
overflowX="auto"
|
15
|
+
>
|
16
|
+
{Array.from({ length: 15 }, (_, index) => (
|
17
|
+
<FlexItem key={index}>
|
18
|
+
<Card>{"Card Content"}</Card>
|
19
|
+
</FlexItem>
|
20
|
+
))}
|
21
|
+
</Flex>
|
22
|
+
)
|
23
|
+
}
|
24
|
+
|
25
|
+
const OverlayMultiDirectional = () => (
|
26
|
+
<>
|
27
|
+
<Overlay
|
28
|
+
color="white"
|
29
|
+
layout={{"left-right": "10%"}}
|
30
|
+
>
|
31
|
+
<InlineCardsExample />
|
32
|
+
</Overlay>
|
33
|
+
</>
|
34
|
+
)
|
35
|
+
|
36
|
+
export default OverlayMultiDirectional
|
@@ -0,0 +1,5 @@
|
|
1
|
+
Optionally, you can pass multi-directional options (`left-right` or `top-bottom`) to the `position` prop, which create multiple overlays.
|
2
|
+
|
3
|
+
Your `color` is still applied as the starting edge to both overlays, and each mask will fade to transparent moving toward its opposite edge, ending at the `size` percentage you set.
|
4
|
+
|
5
|
+
NOTE: Multi-directional overlays share the available container space, so passing a size greater than "50%" to a multi-directional overlay will cause your masks to overlap at the midline of your container. As a best practice, we do not recommend exceeding a size of 25% when using multi-directional overlays.
|
@@ -0,0 +1,66 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
|
3
|
+
import { render, screen } from '../utilities/test-utils'
|
4
|
+
import { Overlay } from '..'
|
5
|
+
|
6
|
+
const testId = "overlay"
|
7
|
+
const children = "This is the Overlay children"
|
8
|
+
|
9
|
+
test('should pass data prop', () => {
|
10
|
+
const props = {
|
11
|
+
children,
|
12
|
+
data: { testid: testId }
|
13
|
+
}
|
14
|
+
|
15
|
+
render(<Overlay {...props} />)
|
16
|
+
const kit = screen.getByTestId(testId)
|
17
|
+
expect(kit).toBeInTheDocument()
|
18
|
+
})
|
19
|
+
|
20
|
+
test("should pass className prop", () => {
|
21
|
+
const className = "custom-class-name"
|
22
|
+
const props = {
|
23
|
+
className,
|
24
|
+
children,
|
25
|
+
data: { testid: testId },
|
26
|
+
}
|
27
|
+
|
28
|
+
render(<Overlay {...props} />)
|
29
|
+
const kit = screen.getByTestId(testId)
|
30
|
+
expect(kit).toHaveClass(className)
|
31
|
+
})
|
32
|
+
|
33
|
+
test('should pass aria prop', () => {
|
34
|
+
const props = {
|
35
|
+
aria: { label: testId },
|
36
|
+
children,
|
37
|
+
data: { testid: testId },
|
38
|
+
}
|
39
|
+
|
40
|
+
render(<Overlay {...props} />)
|
41
|
+
const kit = screen.getByTestId(testId)
|
42
|
+
expect(kit).toHaveAttribute('aria-label', testId)
|
43
|
+
})
|
44
|
+
|
45
|
+
test('should pass id prop', () => {
|
46
|
+
const props = {
|
47
|
+
children,
|
48
|
+
data: { testid: testId },
|
49
|
+
id: testId
|
50
|
+
}
|
51
|
+
|
52
|
+
render(<Overlay {...props} />)
|
53
|
+
const kit = screen.getByTestId(testId)
|
54
|
+
expect(kit).toHaveAttribute('id', testId)
|
55
|
+
})
|
56
|
+
|
57
|
+
test('should render children', () => {
|
58
|
+
const props = {
|
59
|
+
children,
|
60
|
+
data: { testid: testId }
|
61
|
+
}
|
62
|
+
|
63
|
+
render(<Overlay {...props} />)
|
64
|
+
const kit = screen.getByTestId(testId)
|
65
|
+
expect(kit).toHaveTextContent(props.children)
|
66
|
+
})
|
@@ -1,9 +1,4 @@
|
|
1
|
-
<%=
|
2
|
-
aria: object.aria,
|
3
|
-
id: object.id,
|
4
|
-
data: object.data,
|
5
|
-
class: object.classname,
|
6
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
7
2
|
<%= pb_rails("body", props: {
|
8
3
|
tag: "span",
|
9
4
|
classname: "pb_person_first" }) { object.first_name } %>
|
@@ -1,9 +1,4 @@
|
|
1
|
-
<%=
|
2
|
-
aria: object.aria,
|
3
|
-
id: object.id,
|
4
|
-
data: object.data,
|
5
|
-
class: object.classname,
|
6
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
7
2
|
<%= pb_rails("person", props: {
|
8
3
|
first_name: object.first_name,
|
9
4
|
last_name: object.last_name,
|
@@ -1 +1 @@
|
|
1
|
-
A pill uses both a keyword and a specific color to categorize an item. Each pill directly corresponds to a data color
|
1
|
+
A pill uses both a keyword and a specific color to categorize an item. Each pill directly corresponds to a data color <a href="https://playbook.powerapp.cloud/visual_guidelines/colors" target="_blank">here</a>.
|
@@ -1,8 +1,3 @@
|
|
1
|
-
<%=
|
2
|
-
aria: object.aria,
|
3
|
-
class: object.classname,
|
4
|
-
data: object.data,
|
5
|
-
id: object.id,
|
6
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
7
2
|
<%= pb_rails("title", props: { text: object.display_text, tag: "div", size: 4, classname: "pb_pill_text" }) %>
|
8
3
|
<% end %>
|
@@ -102,6 +102,9 @@
|
|
102
102
|
pointer-events: none;
|
103
103
|
}
|
104
104
|
&.inline {
|
105
|
+
svg {
|
106
|
+
right: 6px;
|
107
|
+
}
|
105
108
|
@mixin active_arrow_style {
|
106
109
|
svg {
|
107
110
|
color: $primary !important;
|
@@ -130,6 +133,7 @@
|
|
130
133
|
box-shadow: none;
|
131
134
|
border-color: transparent;
|
132
135
|
padding: 4px 8px;
|
136
|
+
padding-right: $space_lg;
|
133
137
|
border-radius: 4px;
|
134
138
|
option {
|
135
139
|
background-color: $white;
|
@@ -213,6 +217,9 @@
|
|
213
217
|
}
|
214
218
|
}
|
215
219
|
&.inline {
|
220
|
+
svg {
|
221
|
+
right: 6px;
|
222
|
+
}
|
216
223
|
&:not(:hover) {
|
217
224
|
svg {
|
218
225
|
display: none;
|
@@ -233,6 +240,7 @@
|
|
233
240
|
border-color: transparent;
|
234
241
|
background: transparent;
|
235
242
|
padding: 4px 8px;
|
243
|
+
padding-right: $space_lg;
|
236
244
|
border-radius: 4px;
|
237
245
|
option {
|
238
246
|
background-color: $white;
|
@@ -131,43 +131,41 @@ const SelectableCard = (props: SelectableCardProps) => {
|
|
131
131
|
className={globalProps(labelProps)}
|
132
132
|
htmlFor={inputIdPresent}
|
133
133
|
>
|
134
|
-
|
135
|
-
|
136
|
-
<Flex
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
<Input
|
144
|
-
dark={dark}
|
145
|
-
>
|
146
|
-
<input
|
147
|
-
checked={checked}
|
148
|
-
disabled={disabled}
|
149
|
-
onClick={handleClick}
|
150
|
-
readOnly
|
151
|
-
type={inputType}
|
152
|
-
/>
|
153
|
-
</Input>
|
154
|
-
</Flex>
|
155
|
-
<div className="separator" />
|
156
|
-
<div className="psuedo_separator"/>
|
157
|
-
<Card
|
158
|
-
borderNone
|
134
|
+
{variant === 'displayInput' ?
|
135
|
+
<Flex vertical="center">
|
136
|
+
<Flex
|
137
|
+
orientation="column"
|
138
|
+
padding="sm"
|
139
|
+
paddingRight="xs"
|
140
|
+
vertical="center"
|
141
|
+
>
|
142
|
+
<Input
|
159
143
|
dark={dark}
|
160
|
-
padding="sm"
|
161
|
-
status={error ? 'negative' : null}
|
162
144
|
>
|
163
|
-
|
164
|
-
|
145
|
+
<input
|
146
|
+
checked={checked}
|
147
|
+
disabled={disabled}
|
148
|
+
onClick={handleClick}
|
149
|
+
readOnly
|
150
|
+
type={inputType}
|
151
|
+
/>
|
152
|
+
</Input>
|
165
153
|
</Flex>
|
166
|
-
|
154
|
+
<div className="separator" />
|
155
|
+
<div className="psuedo_separator"/>
|
156
|
+
<Card
|
157
|
+
borderNone
|
158
|
+
dark={dark}
|
159
|
+
padding="sm"
|
160
|
+
status={error ? 'negative' : null}
|
161
|
+
>
|
162
|
+
{text ||props.children}
|
163
|
+
</Card>
|
164
|
+
</Flex>
|
165
|
+
:
|
167
166
|
text || props.children
|
168
|
-
|
167
|
+
}
|
169
168
|
{displayIcon()}
|
170
|
-
</div>
|
171
169
|
</label>
|
172
170
|
</div>
|
173
171
|
)
|
@@ -11,7 +11,6 @@
|
|
11
11
|
<% end %>
|
12
12
|
|
13
13
|
<label class="<%= object.label_class %>" for="<%= object.input_id_present %>">
|
14
|
-
<div class="buffer">
|
15
14
|
<% if object.variant == "display_input" %>
|
16
15
|
<%= pb_rails("flex", props: { vertical: "center" }) do %>
|
17
16
|
<%= pb_rails("flex", props: {
|
@@ -46,7 +45,6 @@
|
|
46
45
|
</div>
|
47
46
|
<% end %>
|
48
47
|
<% end %>
|
49
|
-
</div>
|
50
48
|
</label>
|
51
49
|
|
52
50
|
<% if object.variant == "display_input" %>
|
@@ -1,8 +1,4 @@
|
|
1
|
-
<%=
|
2
|
-
id: object.id,
|
3
|
-
data: object.data,
|
4
|
-
class: object.classname,
|
5
|
-
**combined_html_options) do %>
|
1
|
+
<%= pb_content_tag do %>
|
6
2
|
<%= pb_rails("body", props: { status: object.status }) do %>
|
7
3
|
<%= pb_rails("icon", props: { fixed_width: true, icon: object.returned_icon }) if object.returned_icon %>
|
8
4
|
<%= "#{object.value}%" if object.value %>
|
@@ -23,6 +23,7 @@ type TableProps = {
|
|
23
23
|
disableHover?: boolean,
|
24
24
|
htmlOptions?: { [key: string]: string | number | boolean | (() => void) },
|
25
25
|
id?: string,
|
26
|
+
outerPadding?: "none" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl",
|
26
27
|
responsive?: "collapse" | "scroll" | "none",
|
27
28
|
singleLine?: boolean,
|
28
29
|
size?: "sm" | "md" | "lg",
|
@@ -45,6 +46,7 @@ const Table = (props: TableProps) => {
|
|
45
46
|
disableHover = false,
|
46
47
|
htmlOptions = {},
|
47
48
|
id,
|
49
|
+
outerPadding = '',
|
48
50
|
responsive = 'collapse',
|
49
51
|
singleLine = false,
|
50
52
|
size = 'sm',
|
@@ -59,6 +61,8 @@ const Table = (props: TableProps) => {
|
|
59
61
|
const htmlProps = buildHtmlProps(htmlOptions)
|
60
62
|
const tableCollapseCss = responsive !== 'none' ? `table-collapse-${collapse}` : ''
|
61
63
|
const verticalBorderCss = verticalBorder ? 'vertical-border' : ''
|
64
|
+
const spaceCssName = outerPadding !== 'none' ? 'space_' : ''
|
65
|
+
const outerPaddingCss = outerPadding ? `outer_padding_${spaceCssName}${outerPadding}` : ''
|
62
66
|
const isTableTag = tag === 'table'
|
63
67
|
|
64
68
|
const classNames = classnames(
|
@@ -73,6 +77,7 @@ const Table = (props: TableProps) => {
|
|
73
77
|
'no-hover': disableHover,
|
74
78
|
'sticky-header': sticky,
|
75
79
|
'striped': striped,
|
80
|
+
[outerPaddingCss]: outerPadding !== '',
|
76
81
|
},
|
77
82
|
globalProps(props),
|
78
83
|
tableCollapseCss,
|