Class: BrowserslistUseragent::VersionNormalizer

Inherits:
Object
  • Object
show all
Defined in:
lib/browserslist_useragent/version_normalizer.rb

Overview

Normalizes user agent version to semantically valid state

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(version) ⇒ VersionNormalizer

Returns a new instance of VersionNormalizer.



10
11
12
# File 'lib/browserslist_useragent/version_normalizer.rb', line 10

def initialize(version)
  @version = version
end

Instance Attribute Details

#versionObject (readonly)

Returns the value of attribute version.



8
9
10
# File 'lib/browserslist_useragent/version_normalizer.rb', line 8

def version
  @version
end

Instance Method Details

#callObject



14
15
16
17
18
19
20
21
22
23
# File 'lib/browserslist_useragent/version_normalizer.rb', line 14

def call
  agent_version = ::UserAgentParser::Version.new(version)
  return nil if agent_version.major.nil?

  [
    agent_version.major,
    agent_version.minor || 0,
    agent_version.patch || 0
  ].join('.')
end