Sha256: e7a5df1c2d79fa7464632deaeee40c1d2d52df138a4d0092c6827f9ad8c543a0

Contents?: true

Size: 1.65 KB

Versions: 200

Compression:

Stored size: 1.65 KB

Contents

# frozen_string_literal: true

module Playbook
  module PbDateStacked
    class DateStacked
      include ActionView::Helpers::TagHelper
      include ActionView::Context
      include Playbook::Props

      partial "pb_date_stacked/date_stacked"

      prop :date, type: Playbook::Props::Date, required: true
      prop :align, type: Playbook::Props::Enum,
                  values: %w[left center right],
                  default: "left"
      prop :size, type: Playbook::Props::Enum,
                  values: %w[sm md],
                  default: "sm"
      prop :reverse, type: Playbook::Props::Boolean,
                  default: false
      prop :dark, type: Playbook::Props::Boolean,
                  default: false

      def classname
        generate_classname("pb_date_stacked_kit", align, size, reverse_class, dark_class)
      end

      def title_size
        size == "md" ? 3: 4
      end

      def day
        day = Playbook::PbKit::PbDateTime.new(date)
        content_tag(:time, datetime: day.to_iso) do
          "#{day.to_day}"
        end
      end

      def month
        month = Playbook::PbKit::PbDateTime.new(date)
        content_tag(:time, datetime: month.to_iso) do
          "#{month.to_month}"
        end
      end

      def year
        current_year = DateTime.now.year.to_i
        year = Playbook::PbKit::PbDateTime.new(date).to_year.to_i
        if current_year != year
          content_tag(:time, datetime: year) do
            "#{year}"
          end
        else
        end
      end

    private

      def reverse_class
        reverse ? "reverse" : nil
      end

      def dark_class
        dark ? "dark" : nil
      end

    end
  end
end

Version data entries

200 entries across 200 versions & 1 rubygems

Version Path
playbook_ui-7.14.0.pre.alpha1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.16.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.15.1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.15.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.14.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.13.0.pre.alpha1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.13.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.12.1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.12.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.11.1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.11.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.11.0.pre.alpha1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.10.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.9.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.8.4 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.8.3 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.8.2 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.8.1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.8.0 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb
playbook_ui-7.7.0.pre.alpha1 app/pb_kits/playbook/pb_date_stacked/date_stacked.rb