Class: Playbook::PbDateRangeInline::DateRangeInline
- Inherits:
-
KitBase
- Object
- ViewComponent::Base
- KitBase
- Playbook::PbDateRangeInline::DateRangeInline
- Defined in:
- app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb
Instance Attribute Summary
Attributes included from Playbook::Props
Instance Method Summary collapse
- #classname ⇒ Object
- #dark_class ⇒ Object
- #dates_in_current_year? ⇒ Boolean
- #end_date_display ⇒ Object
- #icon_color ⇒ Object
- #start_date_display ⇒ Object
- #text_kit ⇒ Object
- #time_display(time) ⇒ Object
Methods inherited from KitBase
Methods included from Truncate
included, #truncate_options, #truncate_props, #truncate_values
Methods included from Overflow
included, #overflow_options, #overflow_props, #overflow_values
Methods included from TextAlign
included, #text_align_options, #text_align_props, #text_align_values
Methods included from BorderRadius
#border_radius_options, #border_radius_props, #border_radius_values, included
Methods included from Hover
#hover_attributes, #hover_background_values, #hover_color_values, #hover_options, #hover_props, #hover_scale_values, #hover_shadow_values, #hover_values, included
Methods included from Playbook::Position
included, #position_options, #position_values
Methods included from Order
included, #order_options, #order_props, #order_values
Methods included from FlexShrink
#flex_shrink_options, #flex_shrink_props, #flex_shrink_values, included
Methods included from FlexGrow
#flex_grow_options, #flex_grow_props, #flex_grow_values, included
Methods included from Flex
#flex_options, #flex_props, #flex_values, included
Methods included from AlignSelf
#align_self_options, #align_self_props, #align_self_values, included
Methods included from AlignContent
#align_content_options, #align_content_props, #align_content_values, included
Methods included from AlignItems
#align_items_options, #align_items_props, #align_items_values, included
Methods included from JustifySelf
included, #justify_self_options, #justify_self_props, #justify_self_values
Methods included from JustifyContent
included, #justify_content_options, #justify_content_props, #justify_content_values
Methods included from FlexWrap
#flex_wrap_options, #flex_wrap_props, #flex_wrap_values, included
Methods included from FlexDirection
#flex_direction_options, #flex_direction_props, #flex_direction_values, included
Methods included from Cursor
#cursor_options, #cursor_props, #cursor_values, included
Methods included from Display
#display_options, #display_props, #display_size_values, #display_values, included
Methods included from LineHeight
included, #line_height_options, #line_height_props, #line_height_values
Methods included from Shadow
included, #shadow_options, #shadow_props, #shadow_values
Methods included from NumberSpacing
included, #number_spacing_options, #number_spacing_values
Methods included from ZIndex
included, #screen_size_values, #z_index_options, #z_index_props, #z_index_values
Methods included from Spacing
#break_method_values, included, #max_width_options, #max_width_props, #max_width_values, #screen_size_values, #spacing_options, #spacing_props, #spacing_values
Methods included from Classnames
#generate_classname, #generate_classname_without_spacing, included
Methods included from Playbook::Props
Methods included from Playbook::PbKitHelper
Methods included from Playbook::PbFormsHelper
Instance Method Details
#classname ⇒ Object
18 19 20 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 18 def classname generate_classname("pb_date_range_inline_kit", dark_class, align) end |
#dark_class ⇒ Object
58 59 60 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 58 def dark_class dark ? "dark" : nil end |
#dates_in_current_year? ⇒ Boolean
35 36 37 38 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 35 def dates_in_current_year? current_year = Time.current.year start_date.year == current_year && end_date.year == current_year end |
#end_date_display ⇒ Object
50 51 52 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 50 def end_date_display time_display(Playbook::PbKit::PbDateTime.new(end_date)) end |
#icon_color ⇒ Object
31 32 33 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 31 def icon_color size == "sm" ? "light" : nil end |
#start_date_display ⇒ Object
54 55 56 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 54 def start_date_display time_display(Playbook::PbKit::PbDateTime.new(start_date)) end |
#text_kit ⇒ Object
22 23 24 25 26 27 28 29 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 22 def text_kit case size when "xs" "caption" when "sm" "body" end end |
#time_display(time) ⇒ Object
40 41 42 43 44 45 46 47 48 |
# File 'app/pb_kits/playbook/pb_date_range_inline/date_range_inline.rb', line 40 def time_display(time) content_tag(:time, datetime: time.to_iso) do if dates_in_current_year? "#{time.to_month_downcase} #{time.to_day}" else "#{time.to_month_downcase} #{time.to_day}, #{time.to_year}" end end end |