Sha256: 0c0f1cc98cd44ca6154e6d503c612e997106c88ff9ae4602a9dfefcdc5584de1
Contents?: true
Size: 1.06 KB
Versions: 1
Compression:
Stored size: 1.06 KB
Contents
# frozen_string_literal: true module Phlexi module Table module Components class DateTime < Base include Concerns::TablesValue # Renders the date time value # # @param value [String, Date, Time, DateTime] The value to be rendered # @return [void] def render_value(value) formatted_value = format_date_time(value) p(**attributes) { formatted_value } end protected def build_attributes super @options = { format: default_format }.merge(attributes.delete(:options) || {}).compact end private def format_date_time(value) I18n.l(value, **@options) end def default_format :long end def normalize_value(value) case value when Date, DateTime, Time, nil value else raise ArgumentError, "Value must be a Date, DateTime or Time object. #{value.inspect} given." end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
phlexi-table-0.0.1 | lib/phlexi/table/components/date_time.rb |