playbook_ui 4.14.0 → 4.17.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +0 -1
- data/app/pb_kits/playbook/_playbook.scss +8 -1
- data/app/pb_kits/playbook/data/menu.yml +5 -0
- data/app/pb_kits/playbook/index.js +8 -1
- data/app/pb_kits/playbook/packs/examples.js +8 -0
- data/app/pb_kits/playbook/packs/kits/pb_progress_step.js +2 -0
- data/app/pb_kits/playbook/packs/site_styles/docs/_markdown.scss +1 -1
- data/app/pb_kits/playbook/pb_avatar/_avatar.jsx +24 -15
- data/app/pb_kits/playbook/pb_avatar/docs/_avatar_status.jsx +45 -0
- data/app/pb_kits/playbook/pb_avatar/docs/example.yml +6 -5
- data/app/pb_kits/playbook/pb_avatar/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/_avatar_action_button.html.erb +32 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/_avatar_action_button.jsx +78 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/_avatar_action_button.scss +63 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/avatar_action_button.rb +44 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_actions.html.erb +15 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_actions.jsx +19 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_default.html.erb +8 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_default.jsx +13 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_on_click.jsx +15 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_onclick.html.erb +14 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_placement.html.erb +27 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_placement.jsx +29 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/_avatar_action_button_tooltip.html.erb +11 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/example.yml +16 -0
- data/app/pb_kits/playbook/pb_avatar_action_button/docs/index.js +4 -0
- data/app/pb_kits/playbook/pb_badge/_badge.jsx +20 -14
- data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.jsx +9 -2
- data/app/pb_kits/playbook/pb_bar_graph/bar_graph.rb +5 -1
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_default.html.erb +2 -2
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_height.html.erb +26 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_height.jsx +36 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend.html.erb +14 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/_bar_graph_legend.jsx +23 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/_description.md +3 -1
- data/app/pb_kits/playbook/pb_bar_graph/docs/example.yml +4 -0
- data/app/pb_kits/playbook/pb_bar_graph/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_body/_body.jsx +2 -1
- data/app/pb_kits/playbook/pb_body/docs/_body_light.jsx +4 -0
- data/app/pb_kits/playbook/pb_button/_button.jsx +11 -2
- data/app/pb_kits/playbook/pb_button/docs/_button_default.jsx +6 -0
- data/app/pb_kits/playbook/pb_caption/_caption.jsx +19 -17
- data/app/pb_kits/playbook/pb_card/_card.html.erb +1 -1
- data/app/pb_kits/playbook/pb_card/_card.jsx +35 -38
- data/app/pb_kits/playbook/pb_card/_card.scss +0 -10
- data/app/pb_kits/playbook/pb_card/card.rb +9 -3
- data/app/pb_kits/playbook/pb_card/card_body.rb +1 -5
- data/app/pb_kits/playbook/pb_card/card_header.rb +0 -3
- data/app/pb_kits/playbook/pb_card/docs/_card_light.html.erb +2 -1
- data/app/pb_kits/playbook/pb_checkbox/_checkbox.jsx +17 -18
- data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.html.erb +1 -1
- data/app/pb_kits/playbook/pb_circle_icon_button/_circle_icon_button.jsx +10 -1
- data/app/pb_kits/playbook/pb_circle_icon_button/circle_icon_button.rb +3 -1
- data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_link.html.erb +11 -0
- data/app/pb_kits/playbook/pb_circle_icon_button/docs/_circle_icon_button_link.jsx +25 -0
- data/app/pb_kits/playbook/pb_circle_icon_button/docs/example.yml +3 -1
- data/app/pb_kits/playbook/pb_circle_icon_button/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_contact/_contact.html.erb +16 -3
- data/app/pb_kits/playbook/pb_contact/_contact.jsx +59 -34
- data/app/pb_kits/playbook/pb_contact/contact.rb +2 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.html.erb +6 -1
- data/app/pb_kits/playbook/pb_contact/docs/_contact_default.jsx +5 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail.html.erb +6 -0
- data/app/pb_kits/playbook/pb_contact/docs/_contact_with_detail.jsx +5 -0
- data/app/pb_kits/playbook/pb_currency/_currency.html.erb +7 -9
- data/app/pb_kits/playbook/pb_currency/_currency.jsx +37 -21
- data/app/pb_kits/playbook/pb_currency/currency.rb +22 -29
- data/app/pb_kits/playbook/pb_currency/docs/_currency_dark.html.erb +3 -3
- data/app/pb_kits/playbook/pb_currency/docs/_currency_dark.jsx +2 -3
- data/app/pb_kits/playbook/pb_currency/docs/_currency_large.jsx +2 -3
- data/app/pb_kits/playbook/pb_currency/docs/_currency_medium.jsx +2 -2
- data/app/pb_kits/playbook/pb_currency/docs/_currency_small.html.erb +1 -1
- data/app/pb_kits/playbook/pb_currency/docs/_currency_small.jsx +5 -2
- data/app/pb_kits/playbook/pb_dashboard_value/_dashboard_value.jsx +2 -2
- data/app/pb_kits/playbook/pb_date/_date.jsx +39 -15
- data/app/pb_kits/playbook/pb_date/docs/_date_default.jsx +3 -1
- data/app/pb_kits/playbook/pb_date_range_inline/_date_range_inline.jsx +43 -37
- data/app/pb_kits/playbook/pb_date_range_inline/docs/_date_range_inline_default.jsx +2 -2
- data/app/pb_kits/playbook/pb_date_range_stacked/_date_range_stacked.jsx +6 -16
- data/app/pb_kits/playbook/pb_date_stacked/_date_stacked.jsx +21 -18
- data/app/pb_kits/playbook/pb_date_time_stacked/_date_time_stacked.jsx +30 -33
- data/app/pb_kits/playbook/pb_date_year_stacked/_date_year_stacked.jsx +10 -15
- data/app/pb_kits/playbook/pb_distribution_bar/_distribution_bar.jsx +8 -8
- data/app/pb_kits/playbook/pb_file_upload/_file_upload.jsx +13 -23
- data/app/pb_kits/playbook/pb_filter/Filter/CurrentFilters.jsx +56 -0
- data/app/pb_kits/playbook/pb_filter/Filter/FilterBackground.jsx +28 -0
- data/app/pb_kits/playbook/pb_filter/Filter/FilterDouble.jsx +58 -0
- data/app/pb_kits/playbook/pb_filter/Filter/FilterSingle.jsx +46 -0
- data/app/pb_kits/playbook/pb_filter/Filter/FiltersPopover.jsx +37 -0
- data/app/pb_kits/playbook/pb_filter/Filter/ResultsCount.jsx +34 -0
- data/app/pb_kits/playbook/pb_filter/Filter/SortMenu.jsx +85 -0
- data/app/pb_kits/playbook/pb_filter/Filter/index.jsx +26 -0
- data/app/pb_kits/playbook/pb_filter/_filter.jsx +1 -222
- data/app/pb_kits/playbook/pb_filter/_filter.scss +16 -13
- data/app/pb_kits/playbook/pb_filter/docs/_filter_default.html.erb +34 -41
- data/app/pb_kits/playbook/pb_filter/docs/_filter_default.jsx +13 -9
- data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.html.erb +69 -74
- data/app/pb_kits/playbook/pb_filter/docs/_filter_no_background.jsx +12 -9
- data/app/pb_kits/playbook/pb_filter/docs/_filter_only.html.erb +28 -35
- data/app/pb_kits/playbook/pb_filter/docs/_filter_only.jsx +5 -6
- data/app/pb_kits/playbook/pb_filter/docs/_filter_single.html.erb +35 -41
- data/app/pb_kits/playbook/pb_filter/docs/_filter_single.jsx +12 -10
- data/app/pb_kits/playbook/pb_filter/docs/_sort_only.html.erb +12 -18
- data/app/pb_kits/playbook/pb_filter/docs/_sort_only.jsx +14 -44
- data/app/pb_kits/playbook/pb_filter/templates/_default.html.erb +1 -1
- data/app/pb_kits/playbook/pb_fixed_confirmation_toast/_fixed_confirmation_toast.jsx +13 -12
- data/app/pb_kits/playbook/pb_flex/_flex.jsx +35 -20
- data/app/pb_kits/playbook/pb_flex/_flex_item.jsx +6 -9
- data/app/pb_kits/playbook/pb_form_pill/_form_pill.jsx +14 -19
- data/app/pb_kits/playbook/pb_hashtag/_hashtag.jsx +26 -22
- data/app/pb_kits/playbook/pb_highlight/_highlight.jsx +13 -12
- data/app/pb_kits/playbook/pb_home_address_street/_home_address_street.jsx +85 -80
- data/app/pb_kits/playbook/pb_icon/_icon.jsx +54 -33
- data/app/pb_kits/playbook/pb_icon_circle/_icon_circle.jsx +13 -9
- data/app/pb_kits/playbook/pb_icon_value/_icon_value.jsx +16 -20
- data/app/pb_kits/playbook/pb_image/_image.jsx +12 -10
- data/app/pb_kits/playbook/pb_label_pill/_label_pill.html.erb +1 -0
- data/app/pb_kits/playbook/pb_label_pill/_label_pill.jsx +49 -14
- data/app/pb_kits/playbook/pb_label_pill/docs/_label_pill_default.jsx +50 -0
- data/app/pb_kits/playbook/pb_label_pill/docs/example.yml +4 -3
- data/app/pb_kits/playbook/pb_label_pill/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_label_pill/label_pill.rb +1 -1
- data/app/pb_kits/playbook/pb_label_value/_label_value.jsx +10 -17
- data/app/pb_kits/playbook/pb_layout/_layout.jsx +85 -29
- data/app/pb_kits/playbook/pb_layout/_layout.scss +76 -57
- data/app/pb_kits/playbook/pb_layout/docs/_layout_collection.html.erb +54 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_collection.jsx +27 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_colors.jsx +63 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_sizes.jsx +87 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_sizes_dark.jsx +92 -0
- data/app/pb_kits/playbook/pb_layout/docs/_layout_transparent.jsx +24 -0
- data/app/pb_kits/playbook/pb_layout/docs/example.yml +6 -1
- data/app/pb_kits/playbook/pb_layout/docs/index.js +5 -1
- data/app/pb_kits/playbook/pb_layout/layout.rb +10 -2
- data/app/pb_kits/playbook/pb_legend/_legend.jsx +17 -15
- data/app/pb_kits/playbook/pb_line_graph/_line_graph.jsx +9 -2
- data/app/pb_kits/playbook/pb_line_graph/docs/_description.md +3 -1
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_default.html.erb +8 -8
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_height.html.erb +26 -0
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_height.jsx +35 -0
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend.html.erb +15 -0
- data/app/pb_kits/playbook/pb_line_graph/docs/_line_graph_legend.jsx +23 -0
- data/app/pb_kits/playbook/pb_line_graph/docs/example.yml +5 -1
- data/app/pb_kits/playbook/pb_line_graph/docs/index.js +2 -0
- data/app/pb_kits/playbook/pb_line_graph/line_graph.rb +6 -0
- data/app/pb_kits/playbook/pb_list/_list.jsx +24 -21
- data/app/pb_kits/playbook/pb_list/docs/_description.md +7 -1
- data/app/pb_kits/playbook/pb_list/docs/_list_layout_left.html.erb +8 -0
- data/app/pb_kits/playbook/pb_list/docs/_list_layout_right.html.erb +8 -0
- data/app/pb_kits/playbook/pb_list/docs/example.yml +2 -0
- data/app/pb_kits/playbook/pb_loading_inline/_loading_inline.jsx +21 -19
- data/app/pb_kits/playbook/pb_logistic/_logistic.jsx +4 -11
- data/app/pb_kits/playbook/pb_message/_message.jsx +15 -11
- data/app/pb_kits/playbook/pb_multiple_users/_multiple_users.jsx +10 -10
- data/app/pb_kits/playbook/pb_multiple_users_stacked/_multiple_users_stacked.jsx +7 -19
- data/app/pb_kits/playbook/pb_nav/_nav.jsx +17 -14
- data/app/pb_kits/playbook/pb_online_status/_online_status.jsx +23 -14
- data/app/pb_kits/playbook/pb_online_status/docs/_online_status_default.jsx +19 -0
- data/app/pb_kits/playbook/pb_online_status/docs/example.yml +3 -3
- data/app/pb_kits/playbook/pb_online_status/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_person/_person.jsx +5 -11
- data/app/pb_kits/playbook/pb_person_contact/_person_contact.jsx +20 -20
- data/app/pb_kits/playbook/pb_pill/_pill.jsx +5 -10
- data/app/pb_kits/playbook/pb_popover/_popover.jsx +52 -41
- data/app/pb_kits/playbook/pb_popover/docs/example.yml +0 -2
- data/app/pb_kits/playbook/pb_popover/docs/index.js +0 -1
- data/app/pb_kits/playbook/pb_progress_pills/_progress_pills.jsx +16 -12
- data/app/pb_kits/playbook/pb_progress_simple/_progress_simple.jsx +15 -12
- data/app/pb_kits/playbook/pb_progress_step/_progress_step.html.erb +6 -0
- data/app/pb_kits/playbook/pb_progress_step/_progress_step.jsx +42 -0
- data/app/pb_kits/playbook/pb_progress_step/_progress_step.scss +388 -0
- data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.html.erb +23 -0
- data/app/pb_kits/playbook/pb_progress_step/_progress_step_item.jsx +44 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_description.md +1 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_dark.html.erb +8 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_dark.jsx +18 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_default.html.erb +33 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_default.jsx +39 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_vertical.html.erb +33 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/_progress_step_vertical.jsx +40 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/example.yml +12 -0
- data/app/pb_kits/playbook/pb_progress_step/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_progress_step/progress_step.rb +33 -0
- data/app/pb_kits/playbook/pb_progress_step/progress_step_item.rb +19 -0
- data/app/pb_kits/playbook/pb_radio/_radio.jsx +3 -1
- data/app/pb_kits/playbook/pb_section_separator/_section_separator.jsx +19 -13
- data/app/pb_kits/playbook/pb_select/_select.jsx +4 -2
- data/app/pb_kits/playbook/pb_selectable_card/_selectable_card.jsx +12 -7
- data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.html.erb +30 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.jsx +97 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/_selectable_card_icon.scss +74 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_checkmark.html.erb +29 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_checkmark.jsx +41 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_dark.html.erb +30 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_dark.jsx +40 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_default.html.erb +26 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_default.jsx +37 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_single_select.html.erb +27 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/_selectable_card_icon_single_select.jsx +40 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/example.yml +16 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/docs/index.js +4 -0
- data/app/pb_kits/playbook/pb_selectable_card_icon/selectable_card_icon.rb +50 -0
- data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.html.erb +24 -0
- data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.jsx +107 -0
- data/app/pb_kits/playbook/pb_selectable_icon/_selectable_icon.scss +85 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_dark.html.erb +26 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_dark.jsx +43 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_default.html.erb +23 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_default.jsx +40 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_single_select.html.erb +27 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/_selectable_icon_single_select.jsx +46 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/example.yml +12 -0
- data/app/pb_kits/playbook/pb_selectable_icon/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_selectable_icon/selectable_icon.rb +55 -0
- data/app/pb_kits/playbook/pb_source/_source.jsx +113 -13
- data/app/pb_kits/playbook/pb_source/docs/_source_default.html.erb +3 -1
- data/app/pb_kits/playbook/pb_source/docs/_source_default.jsx +37 -0
- data/app/pb_kits/playbook/pb_source/docs/_source_noicon.jsx +40 -0
- data/app/pb_kits/playbook/pb_source/docs/_source_types.jsx +85 -0
- data/app/pb_kits/playbook/pb_source/docs/example.yml +3 -0
- data/app/pb_kits/playbook/pb_source/docs/index.js +5 -0
- data/app/pb_kits/playbook/pb_star_rating/_star_rating.html.erb +6 -2
- data/app/pb_kits/playbook/pb_star_rating/_star_rating.jsx +98 -13
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_default.jsx +28 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/_star_rating_hide.jsx +13 -0
- data/app/pb_kits/playbook/pb_star_rating/docs/example.yml +2 -1
- data/app/pb_kits/playbook/pb_star_rating/docs/index.js +3 -0
- data/app/pb_kits/playbook/pb_star_rating/star_rating.rb +2 -1
- data/app/pb_kits/playbook/pb_stat_change/_stat_change.jsx +14 -13
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.html.erb +1 -1
- data/app/pb_kits/playbook/pb_stat_change/docs/_stat_change_default.jsx +1 -1
- data/app/pb_kits/playbook/pb_stat_change/stat_change.rb +1 -1
- data/app/pb_kits/playbook/pb_stat_value/_stat_value.jsx +2 -1
- data/app/pb_kits/playbook/pb_table/_table.jsx +29 -28
- data/app/pb_kits/playbook/pb_table/_table.scss +1 -1
- data/app/pb_kits/playbook/pb_table/_table_row.jsx +6 -7
- data/app/pb_kits/playbook/pb_table/docs/_table_side_highlight.html.erb +52 -8
- data/app/pb_kits/playbook/pb_table/docs/_table_side_highlight.jsx +52 -8
- data/app/pb_kits/playbook/pb_table/docs/_table_side_highlight.md +3 -1
- data/app/pb_kits/playbook/pb_text_input/_text_input.html.erb +5 -3
- data/app/pb_kits/playbook/pb_text_input/_text_input.jsx +21 -5
- data/app/pb_kits/playbook/pb_text_input/docs/_text_input_default.html.erb +31 -5
- data/app/pb_kits/playbook/pb_text_input/docs/_text_input_default.jsx +3 -0
- data/app/pb_kits/playbook/pb_text_input/text_input.rb +1 -1
- data/app/pb_kits/playbook/pb_textarea/_textarea.jsx +2 -1
- data/app/pb_kits/playbook/pb_time_range_inline/_time_range_inline.jsx +38 -18
- data/app/pb_kits/playbook/pb_time_stacked/_time_stacked.jsx +12 -11
- data/app/pb_kits/playbook/pb_timestamp/_timestamp.jsx +32 -14
- data/app/pb_kits/playbook/pb_timestamp/docs/_timestamp_default.jsx +8 -0
- data/app/pb_kits/playbook/pb_timestamp/docs/example.yml +3 -3
- data/app/pb_kits/playbook/pb_timestamp/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_title/_title.jsx +12 -13
- data/app/pb_kits/playbook/pb_title/docs/_title_light.html.erb +1 -1
- data/app/pb_kits/playbook/pb_title_count/_title_count.jsx +49 -28
- data/app/pb_kits/playbook/pb_title_count/docs/_title_count_align.jsx +31 -0
- data/app/pb_kits/playbook/pb_title_count/docs/_title_count_default.jsx +13 -2
- data/app/pb_kits/playbook/pb_title_count/docs/example.yml +4 -5
- data/app/pb_kits/playbook/pb_title_count/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_title_detail/_title_detail.jsx +36 -14
- data/app/pb_kits/playbook/pb_title_detail/docs/_title_detail_default.jsx +26 -0
- data/app/pb_kits/playbook/pb_title_detail/docs/example.yml +3 -3
- data/app/pb_kits/playbook/pb_title_detail/docs/index.js +1 -0
- data/app/pb_kits/playbook/pb_toggle/_toggle.jsx +9 -11
- data/app/pb_kits/playbook/pb_tooltip/_tooltip.html.erb +10 -0
- data/app/pb_kits/playbook/pb_tooltip/_tooltip.scss +105 -0
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_default.html.erb +10 -0
- data/app/pb_kits/playbook/pb_tooltip/docs/_tooltip_white.html.erb +9 -0
- data/app/pb_kits/playbook/pb_tooltip/docs/example.yml +5 -0
- data/app/pb_kits/playbook/pb_tooltip/index.js +80 -0
- data/app/pb_kits/playbook/pb_tooltip/tooltip.rb +34 -0
- data/app/pb_kits/playbook/pb_user/_user.jsx +37 -37
- data/app/pb_kits/playbook/pb_user_badge/_user_badge.jsx +7 -7
- data/app/pb_kits/playbook/pb_weekday_stacked/_weekday_stacked.jsx +32 -30
- data/app/pb_kits/playbook/plugins/pb_chart.js +4 -0
- data/app/pb_kits/playbook/props.rb +48 -0
- data/app/pb_kits/playbook/tokens/_colors.scss +7 -3
- data/app/pb_kits/playbook/tokens/_spacing.scss +1 -0
- data/app/pb_kits/playbook/utilities/_spacing.scss +42 -0
- data/app/pb_kits/playbook/utilities/spacing.js +33 -0
- data/app/pb_kits/playbook/vendor.js +3 -0
- data/app/views/playbook/samples/dashboards/index.html.erb +3 -1
- data/lib/playbook/version.rb +1 -1
- metadata +109 -10
- data/app/pb_kits/playbook/pb_layout/_body.jsx +0 -26
- data/app/pb_kits/playbook/pb_layout/_sidebar.jsx +0 -26
- data/app/pb_kits/playbook/pb_layout/docs/_layout_default.jsx +0 -14
- data/app/pb_kits/playbook/pb_popover/docs/_popover_with_button.html.erb +0 -4
@@ -0,0 +1,80 @@
|
|
1
|
+
import PbEnhancedElement from '../pb_enhanced_element'
|
2
|
+
import Popper from 'popper.js'
|
3
|
+
|
4
|
+
const TOOLTIP_OFFSET = '0,0'
|
5
|
+
const TOOLTIP_TIMEOUT = 250
|
6
|
+
|
7
|
+
export default class PbTooltip extends PbEnhancedElement {
|
8
|
+
static get selector() {
|
9
|
+
return '[data-pb-tooltip-kit]'
|
10
|
+
}
|
11
|
+
|
12
|
+
connect() {
|
13
|
+
this.popper = new Popper(this.triggerElement, this.tooltip, {
|
14
|
+
placement: this.position,
|
15
|
+
modifiers: {
|
16
|
+
offset: {
|
17
|
+
offset: TOOLTIP_OFFSET,
|
18
|
+
},
|
19
|
+
arrow: {
|
20
|
+
element: `#${this.tooltipId}-arrow`,
|
21
|
+
},
|
22
|
+
},
|
23
|
+
onUpdate: (p) => {
|
24
|
+
p.instance.popper.classList.toggle('flipped', p.flipped)
|
25
|
+
},
|
26
|
+
})
|
27
|
+
|
28
|
+
this.tooltip.addEventListener('mouseleave', () => {
|
29
|
+
this.hideTooltip()
|
30
|
+
})
|
31
|
+
|
32
|
+
this.triggerElement.addEventListener('mouseenter', () => {
|
33
|
+
this.mouseenterTimeout = setTimeout(() => {
|
34
|
+
this.popper.scheduleUpdate()
|
35
|
+
this.showTooltip()
|
36
|
+
}, TOOLTIP_TIMEOUT)
|
37
|
+
|
38
|
+
this.triggerElement.addEventListener('mouseleave', (event) => {
|
39
|
+
clearTimeout(this.mouseenterTimeout)
|
40
|
+
if (event.toElement.closest(`#${this.tooltipId}`) !== this.tooltip) {
|
41
|
+
setTimeout(() => {
|
42
|
+
this.hideTooltip()
|
43
|
+
}, 0)
|
44
|
+
}
|
45
|
+
}, { once: true })
|
46
|
+
})
|
47
|
+
}
|
48
|
+
|
49
|
+
showTooltip() {
|
50
|
+
this.tooltip.classList.add('show')
|
51
|
+
}
|
52
|
+
|
53
|
+
hideTooltip() {
|
54
|
+
this.tooltip.classList.remove('show')
|
55
|
+
}
|
56
|
+
|
57
|
+
toggleTooltip() {
|
58
|
+
this.tooltip.classList.toggle('show')
|
59
|
+
}
|
60
|
+
|
61
|
+
get triggerElement() {
|
62
|
+
return this._triggerElement = (this._triggerElement || document.querySelector(`#${this.triggerElementId}`))
|
63
|
+
}
|
64
|
+
|
65
|
+
get tooltip() {
|
66
|
+
return this._tooltip = (this._tooltip || this.element.querySelector(`#${this.tooltipId}`))
|
67
|
+
}
|
68
|
+
|
69
|
+
get position() {
|
70
|
+
return this.element.dataset.pbTooltipPosition
|
71
|
+
}
|
72
|
+
|
73
|
+
get triggerElementId() {
|
74
|
+
return this.element.dataset.pbTooltipTriggerElementId
|
75
|
+
}
|
76
|
+
|
77
|
+
get tooltipId() {
|
78
|
+
return this.element.dataset.pbTooltipTooltipId
|
79
|
+
}
|
80
|
+
}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Playbook
|
4
|
+
module PbTooltip
|
5
|
+
class Tooltip
|
6
|
+
include Playbook::Props
|
7
|
+
partial "pb_tooltip/tooltip"
|
8
|
+
|
9
|
+
prop :position
|
10
|
+
prop :trigger_element_id
|
11
|
+
prop :tooltip_id
|
12
|
+
prop :dark, type: Playbook::Props::Boolean,
|
13
|
+
default: false
|
14
|
+
|
15
|
+
def classname
|
16
|
+
generate_classname("pb_tooltip_kit", dark_class)
|
17
|
+
end
|
18
|
+
|
19
|
+
def data
|
20
|
+
Hash(values[:data]).merge(
|
21
|
+
pb_tooltip_kit: true,
|
22
|
+
pb_tooltip_position: position,
|
23
|
+
pb_tooltip_trigger_element_id: trigger_element_id,
|
24
|
+
pb_tooltip_tooltip_id: tooltip_id,
|
25
|
+
)
|
26
|
+
end
|
27
|
+
|
28
|
+
private
|
29
|
+
def dark_class
|
30
|
+
dark ? "dark" : nil
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -1,12 +1,9 @@
|
|
1
1
|
/* @flow */
|
2
2
|
|
3
3
|
import React from 'react'
|
4
|
-
|
5
|
-
import {
|
6
|
-
|
7
|
-
Body,
|
8
|
-
Title,
|
9
|
-
} from '../'
|
4
|
+
import classnames from 'classnames'
|
5
|
+
import { Avatar, Body, Title } from '../'
|
6
|
+
import { spacing } from '../utilities/spacing.js'
|
10
7
|
|
11
8
|
type UserProps = {
|
12
9
|
className?: String,
|
@@ -14,42 +11,45 @@ type UserProps = {
|
|
14
11
|
name: String,
|
15
12
|
territory?: String,
|
16
13
|
title?: String,
|
17
|
-
size?:
|
18
|
-
align?:
|
19
|
-
orientation?:
|
14
|
+
size?: "sm" | "md" | "lg",
|
15
|
+
align?: "left" | "center" | "right",
|
16
|
+
orientation?: "horiztonal" | "vertical",
|
20
17
|
avatar?: Boolean,
|
21
18
|
avatarUrl?: String,
|
22
19
|
}
|
23
20
|
|
24
|
-
const User = ({
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
21
|
+
const User = (props: UserProps) => {
|
22
|
+
const {
|
23
|
+
name = '',
|
24
|
+
territory = '',
|
25
|
+
title = '',
|
26
|
+
align = 'left',
|
27
|
+
orientation = 'horizontal',
|
28
|
+
size = 'sm',
|
29
|
+
avatar = false,
|
30
|
+
avatarUrl,
|
31
|
+
} = props
|
32
|
+
return (
|
33
|
+
<div className={classnames(`pb_user_kit_${align}_${orientation}_${size}`, spacing(props))}>
|
34
|
+
<If condition={avatar || avatarUrl}>
|
35
|
+
<Avatar
|
36
|
+
imageUrl={avatarUrl}
|
37
|
+
name={name}
|
38
|
+
size={size}
|
39
|
+
/>
|
40
|
+
</If>
|
42
41
|
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
42
|
+
<div className="content_wrapper">
|
43
|
+
<Title
|
44
|
+
size={size == 'lg' ? 3 : 4}
|
45
|
+
text={name}
|
46
|
+
/>
|
47
|
+
<Body color="light">
|
48
|
+
{territory == '' ? title : `${territory} • ${title}`}
|
49
|
+
</Body>
|
50
|
+
</div>
|
51
51
|
</div>
|
52
|
-
|
53
|
-
|
52
|
+
)
|
53
|
+
}
|
54
54
|
|
55
55
|
export default User
|
@@ -1,21 +1,21 @@
|
|
1
1
|
/* @flow */
|
2
2
|
import React from 'react'
|
3
|
+
import classnames from 'classnames'
|
4
|
+
import { spacing } from '../utilities/spacing.js'
|
3
5
|
|
4
6
|
type UserBadgeProps = {
|
5
7
|
className?: String,
|
6
8
|
id?: String,
|
7
|
-
badge?:
|
8
|
-
size?:
|
9
|
+
badge?: "million-dollar" | "veteran",
|
10
|
+
size?: "sm" | "md" | "lg",
|
9
11
|
}
|
10
12
|
|
11
|
-
const UserBadge = ({
|
12
|
-
badge = 'million-dollar',
|
13
|
-
size = 'md',
|
14
|
-
}: UserBadgeProps) => {
|
13
|
+
const UserBadge = (props: UserBadgeProps) => {
|
14
|
+
const { badge = 'million-dollar', size = 'md' } = props
|
15
15
|
const image = require(`./badges/_${badge}.svg`)
|
16
16
|
|
17
17
|
return (
|
18
|
-
<div className={`pb_user_badge_kit_${size}
|
18
|
+
<div className={classnames(`pb_user_badge_kit_${size}`, spacing(props))}>
|
19
19
|
<div className="pb_user_badge_wrapper">
|
20
20
|
<img src={image} />
|
21
21
|
</div>
|
@@ -2,24 +2,19 @@
|
|
2
2
|
|
3
3
|
import React from 'react'
|
4
4
|
import classnames from 'classnames'
|
5
|
+
import { spacing } from '../utilities/spacing.js'
|
6
|
+
import { buildCss } from '../utilities/props'
|
5
7
|
|
6
|
-
import {
|
7
|
-
buildCss,
|
8
|
-
} from '../utilities/props'
|
9
|
-
|
10
|
-
import {
|
11
|
-
Caption,
|
12
|
-
Title,
|
13
|
-
} from '../'
|
8
|
+
import { Caption, Title } from '../'
|
14
9
|
|
15
10
|
import DateTime from '../pb_kit/dateTime.js'
|
16
11
|
|
17
12
|
type WeekdayStackedProps = {
|
18
|
-
align?:
|
13
|
+
align?: "left" | "center" | "right",
|
19
14
|
className?: String,
|
20
15
|
dark?: Boolean,
|
21
16
|
date: Date,
|
22
|
-
variant?:
|
17
|
+
variant?: "day_only" | "month_day" | "expanded",
|
23
18
|
compact?: Boolean,
|
24
19
|
id?: String,
|
25
20
|
}
|
@@ -43,25 +38,32 @@ const getFormattedDate = (date, variant) => {
|
|
43
38
|
}
|
44
39
|
}
|
45
40
|
|
46
|
-
const WeekdayStacked = ({
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
41
|
+
const WeekdayStacked = (props: WeekdayStackedProps) => {
|
42
|
+
const {
|
43
|
+
align = 'left',
|
44
|
+
className,
|
45
|
+
dark = false,
|
46
|
+
date = new Date(),
|
47
|
+
variant = 'month_day',
|
48
|
+
compact = false,
|
49
|
+
} = props
|
50
|
+
return (
|
51
|
+
<div
|
52
|
+
className={classnames(
|
53
|
+
buildCss('pb_weekday_stacked_kit', align),
|
54
|
+
className,
|
55
|
+
spacing(props)
|
56
|
+
)}
|
57
|
+
>
|
58
|
+
<Caption dark={dark}>{getDayOfWeek(date, compact)}</Caption>
|
59
|
+
<Title
|
60
|
+
dark={dark}
|
61
|
+
size={4}
|
62
|
+
tag="span"
|
63
|
+
text={getFormattedDate(date, variant)}
|
64
|
+
/>
|
65
|
+
</div>
|
66
|
+
)
|
67
|
+
}
|
66
68
|
|
67
69
|
export default WeekdayStacked
|
@@ -82,6 +82,7 @@ class pbChart {
|
|
82
82
|
text: this.defaults.title,
|
83
83
|
},
|
84
84
|
chart: {
|
85
|
+
height: this.defaults.height,
|
85
86
|
type: this.defaults.type,
|
86
87
|
},
|
87
88
|
subtitle: {
|
@@ -97,6 +98,9 @@ class pbChart {
|
|
97
98
|
xAxis: {
|
98
99
|
categories: this.defaults.xAxisCategories,
|
99
100
|
},
|
101
|
+
legend: {
|
102
|
+
enabled: this.defaults.legend,
|
103
|
+
},
|
100
104
|
plotOptions: {
|
101
105
|
series: {
|
102
106
|
pointStart: this.defaults.pointStart,
|
@@ -33,10 +33,21 @@ module Playbook
|
|
33
33
|
self.class.props[name].value values[name]
|
34
34
|
end
|
35
35
|
|
36
|
+
def spacing_props
|
37
|
+
selected_props = spacing_options.keys.select { |sk| try(sk) }
|
38
|
+
return nil unless selected_props.present?
|
39
|
+
|
40
|
+
selected_props.map do |k|
|
41
|
+
spacing_value = send(k)
|
42
|
+
"#{spacing_options[k]}_#{spacing_value}" if spacing_values.include? spacing_value
|
43
|
+
end.compact.join(" ")
|
44
|
+
end
|
45
|
+
|
36
46
|
def generate_classname(*name_parts, separator: "_")
|
37
47
|
[
|
38
48
|
name_parts.compact.join(separator),
|
39
49
|
prop(:classname),
|
50
|
+
spacing_props,
|
40
51
|
].compact.join(" ")
|
41
52
|
end
|
42
53
|
|
@@ -49,6 +60,43 @@ module Playbook
|
|
49
60
|
prop :classname
|
50
61
|
prop :aria, type: Playbook::Props::Hash, default: {}
|
51
62
|
prop :children, type: Playbook::Props::Proc
|
63
|
+
prop :margin
|
64
|
+
prop :margin_bottom
|
65
|
+
prop :margin_left
|
66
|
+
prop :margin_right
|
67
|
+
prop :margin_top
|
68
|
+
prop :margin_x
|
69
|
+
prop :margin_y
|
70
|
+
prop :padding
|
71
|
+
prop :padding_bottom
|
72
|
+
prop :padding_left
|
73
|
+
prop :padding_right
|
74
|
+
prop :padding_top
|
75
|
+
prop :padding_x
|
76
|
+
prop :padding_y
|
77
|
+
end
|
78
|
+
|
79
|
+
def spacing_options
|
80
|
+
{
|
81
|
+
margin: "m",
|
82
|
+
margin_bottom: "mb",
|
83
|
+
margin_left: "ml",
|
84
|
+
margin_right: "mr",
|
85
|
+
margin_top: "mt",
|
86
|
+
margin_x: "mx",
|
87
|
+
margin_y: "my",
|
88
|
+
padding: "p",
|
89
|
+
padding_bottom: "pb",
|
90
|
+
padding_left: "pl",
|
91
|
+
padding_right: "pr",
|
92
|
+
padding_top: "pt",
|
93
|
+
padding_x: "px",
|
94
|
+
padding_y: "py",
|
95
|
+
}
|
96
|
+
end
|
97
|
+
|
98
|
+
def spacing_values
|
99
|
+
%w[none xs sm md lg xl]
|
52
100
|
end
|
53
101
|
|
54
102
|
class_methods do
|
@@ -31,11 +31,15 @@ $white: #FFFFFF;
|
|
31
31
|
$silver: #F3F7FB;
|
32
32
|
$slate: #C1CDD6;
|
33
33
|
$charcoal: #242B42;
|
34
|
+
$black: #000000;
|
35
|
+
|
34
36
|
$interface_colors: (
|
35
37
|
white: $white,
|
36
38
|
silver: $silver,
|
37
39
|
slate: $slate,
|
38
40
|
charcoal: $charcoal,
|
41
|
+
black: $black,
|
42
|
+
|
39
43
|
);
|
40
44
|
|
41
45
|
// Main colors ------------------------
|
@@ -72,7 +76,7 @@ $action_colors: (
|
|
72
76
|
|
73
77
|
// Active colors ----------------------
|
74
78
|
$active_light: lighten(#E5F2FF, 3.5%);
|
75
|
-
$active_dark: #
|
79
|
+
$active_dark: #0082ff;
|
76
80
|
$active_colors: (
|
77
81
|
active_light: $active_light,
|
78
82
|
active_dark: $active_dark
|
@@ -88,7 +92,7 @@ $hover_colors: (
|
|
88
92
|
|
89
93
|
// Focus colors -----------------------
|
90
94
|
$focus_input_light: rgba($active_light, $opacity_5);
|
91
|
-
$focus_input_dark: rgba(
|
95
|
+
$focus_input_dark: rgba(#144075, $opacity_5);
|
92
96
|
$focus_input_colors: (
|
93
97
|
focus_input_light: $focus_input_light,
|
94
98
|
focus_input_dark: $focus_input_dark
|
@@ -130,7 +134,7 @@ $data_2: $yellow;
|
|
130
134
|
$data_3: $purple;
|
131
135
|
$data_4: $green;
|
132
136
|
$data_5: $orange;
|
133
|
-
$data_6:
|
137
|
+
$data_6: #144075;
|
134
138
|
$data_7: $teal;
|
135
139
|
$data_8: $red;
|
136
140
|
$data_colors: (
|