Sha256: ef1606da73fec7d969a5b9d2f7335e77da36839fbda1180beeb2124c8a2e67e9

Contents?: true

Size: 466 Bytes

Versions: 11

Compression:

Stored size: 466 Bytes

Contents

module SmsAero::Types
  # Describes a valid phone containing digits without lead zeros
  #
  # @example
  #   SmsAero::Types::Phone["07 (123) 134-12-08"] # => "71231341208"
  #   SmsAero::Types::Phone["008"] # raises #<Dry::Types::ConstraintError ...>
  #
  Phone = Strict::String.constrained(format: /\A\d{11,13}\z/)
                        .constructor do |value|
                          value.to_s.scan(/\d/).join[/[^0].*/].to_s
                        end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
sms_aero-0.0.11 lib/sms_aero/types/phone.rb
sms_aero-0.0.10 lib/sms_aero/types/phone.rb
sms_aero-0.0.9 lib/sms_aero/types/phone.rb
sms_aero-0.0.8 lib/sms_aero/types/phone.rb
sms_aero-0.0.7 lib/sms_aero/types/phone.rb
sms_aero-0.0.6 lib/sms_aero/types/phone.rb
sms_aero-0.0.5 lib/sms_aero/types/phone.rb
sms_aero-0.0.4 lib/sms_aero/types/phone.rb
sms_aero-0.0.3 lib/sms_aero/types/phone.rb
sms_aero-0.0.2 lib/sms_aero/types/phone.rb
sms_aero-0.0.1 lib/sms_aero/types/phone.rb