Sha256: 516128f9de827ddb3184ce1da52936649bf49e4c7607a96fc61f321e0556da50

Contents?: true

Size: 1018 Bytes

Versions: 1

Compression:

Stored size: 1018 Bytes

Contents

# frozen_string_literal: true

require "action_view"

module Playbook
  module PbContact
    class Contact
      include ActionView::Helpers::NumberHelper
      include Playbook::Props

      partial "pb_contact/contact"

      prop :contact_type
      prop :contact_value
      prop :contact_detail

      def classname
        generate_classname("pb_contact_kit")
      end

      def contact_icon
        case contact_type
        when "cell"
          "mobile"
        when "home"
          "phone"
        when "work"
          "phone-office"
        when "email"
          "envelope"
        when "wrong number"
          "phone-slash"
        else # "unknown" || "other"
          "phone"
        end
      end

      def formatted_contact_value
        if contact_type == "email"
          contact_value
        else
          number_to_phone(formatted_value, area_code: true)
        end
      end

    private

      def formatted_value
        contact_value.to_s.gsub(/\D/, "")
      end

    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
playbook_ui-2.9.8 app/pb_kits/playbook/pb_contact/contact.rb