Sha256: 51ee4eac93b7eb03206d7c89813885a3db110f8c62ba019395bff28e76568de2

Contents?: true

Size: 549 Bytes

Versions: 1

Compression:

Stored size: 549 Bytes

Contents

# frozen_string_literal: true

module Phlexi
  module Display
    module Components
      class String < Base
        include Concerns::DisplaysValue

        def render_value(value)
          p(**attributes) {
            maybe_format_value value
          }
        end

        protected

        def build_attributes
          super
          @formatter = attributes[:formatter]
        end

        def maybe_format_value(value)
          return value unless @formatter

          @formatter.call(value)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
phlexi-display-0.0.11 lib/phlexi/display/components/string.rb