Module: Brauser::Browseable::DefaultDefinitions

Included in:
Brauser::Browser
Defined in:
lib/brauser/definitions/browsers.rb,
lib/brauser/definitions/platforms.rb,
lib/brauser/definitions/languages.rb

Overview

The default browsers definitions.

Constant Summary

MOBILE_BROWSERS =

Default mobile browsers.

[
  [:coremedia, "Apple CoreMedia", /coremedia/i, /.+CoreMedia v([a-z0-9.]+)/i],

  [:opera_mobile, "Opera Mobile", /opera mobi/i, /.+Opera Mobi.+((.+Opera )|(Version\/))([a-z0-9.]+)/i],
  [:opera, "Opera", /opera/i, proc { |_, agent|
    version = ((agent !~ /wii/i) ? /((.+Opera )|(Version\/))(?<version>[a-z0-9.]+)/i : /(.+Nintendo Wii; U; ; )(?<version>[a-z0-9.]+)/i).match(agent)
    version ? version["version"] : nil
  }],

  [:android, "Android", /android/i, /(.+Android )([a-z0-9.]+)/i],
  [:blackberry, "RIM BlackBerry", /blackberry/i, /(.+Version\/)([a-z0-9.]+)/i],
  [:kindle, "Amazon Kindle", /(kindle)/i, /(.+(Kindle|Silk)\/)([a-z0-9.]+)/i],
  [:psp, "Sony Playstation Portable", /psp/i, /(.+PlayStation Portable\); )([a-z0-9.]+)/i],
  [:ps3, "Sony Playstation 3", /playstation 3/i, /(.+PLAYSTATION 3; )([a-z0-9.]+)/i],
  [:windows_phone, "Microsoft Windows Phone", /windows phone/i, /(.+IEMobile\/)([a-z0-9.]+)/i],
  [:wii, "Nintendo Wii", /nintendo wii/, /(.+Nintendo Wii; U; ; )([a-z0-9.]+)/i],

  [:chrome_ios, "Chrome iOS", /crios/i, /(.+CriOS\/)([a-z0-9.]+)/i],
  [:ipod, "Apple iPod", /ipod/i, /(.+Version\/)([a-z0-9.]+)/i],
  [:iphone, "Apple iPhone", /iphone/i, /(.+Version\/)([a-z0-9.]+)/i],
  [:ipad, "Apple iPad", /ipad/i, /(.+Version\/)([a-z0-9.]+)/i],

  [:mobile, "Other Mobile Browser", /(mobile|symbian|midp|windows ce)/i, /.+\/([a-z0-9.]+)/i]
]
MAJOR_DESKTOP_BROWSERS =

Default major desktop browsers.

[
  [:chrome, "Google Chrome", /((chrome)|(chromium))/i, /(.+Chrom[a-z]+\/)([a-z0-9.]+)/i],
  [:netscape, "Netscape Navigator", /(netscape|navigator)\//i, /((Netscape|Navigator)\/)([a-z0-9.]+)/i],
  [:firefox, "Mozilla Firefox", /firefox/i, /(.+Firefox\/)([a-z0-9.]+)/i],
  [:safari, "Apple Safari", proc { |_, agent|
    Brauser::Definition.disambiguate_browser(agent, /safari/i, /((chrome)|(chromium)|(crios))/i)
  }, /(.+Version\/)([a-z0-9.]+)/i]
]
MSIE_BROWSERS =

Default Microsoft Internet Explorer browsers.

[
  [:msie_compatibility, "Microsoft Internet Explorer (Compatibility View)", /(msie 7\.0).+(trident)/i, proc { |_, agent|
    version = /(.+trident\/)(?<version>[a-z0-9.]+)/i.match(agent)["version"].split(".")
    version[0] = version[0].to_integer + 4
    version.join(".")
  }],
  [:msie, "Microsoft Internet Explorer", proc { |_, agent| Brauser::Definition.disambiguate_browser(agent, /msie/i, /opera/i) }, /(.+MSIE )([a-z0-9.]+)/i]
]
MINOR_DESKTOP_BROWSERS =

Default minor desktop browsers.

[
  [:quicktime, "Apple QuickTime", /quicktime/i, /(.+((QuickTime\/)|(qtver=)))([a-z0-9.]+)/i],
  [:webkit, "WebKit Browser", /webkit/i, /(.+WebKit\/)([a-z0-9.]+)/i],
  [:gecko, "Gecko Browser", /gecko/i, /(.+rv:|Gecko\/)([a-z0-9.]+)/i]
]
PLATFORMS =

Default platforms.

[
  [:symbian, "Symbian", /s60|symb/i],
  [:windows_phone, "Microsoft Windows Phone", /windows phone/i],
  [:kindle, "Nokia Symbian", /kindle|silk/i],
  [:ios, "Apple iOS", proc { |_, agent| [:iphone, :ipad, :ipod, :chrome_ios].include?(name) || agent =~ /ipad|iphone|ipod|crios/i }],
  [:android, "Android", /android/i],
  [:blackberry, "RIM BlackBerry", /blackberry/i],
  [:psp, "Sony Playstation Portable", /psp/i],
  [:ps3, "Sony Playstation 3", /playstation 3/i],
  [:wii, "Nintendo Wii", /wii/i],

  [:linux, "Linux", /linux/i],
  [:osx, "Apple MacOS X", /mac|macintosh|mac os x/i],
  [:windows, "Microsoft Windows", /windows/i]
]
LANGUAGES =

Default languages.

{
  "af" => "Afrikaans",
  "sq" => "Albanian",
  "eu" => "Basque",
  "bg" => "Bulgarian",
  "be" => "Byelorussian",
  "ca" => "Catalan",
  "zh" => "Chinese",
  "zh-cn" => "Chinese/China",
  "zh-tw" => "Chinese/Taiwan",
  "zh-hk" => "Chinese/Hong Kong",
  "zh-sg" => "Chinese/singapore",
  "hr" => "Croatian",
  "cs" => "Czech",
  "da" => "Danish",
  "nl" => "Dutch",
  "nl-nl" => "Dutch/Netherlands",
  "nl-be" => "Dutch/Belgium",
  "en" => "English",
  "en-gb" => "English/United Kingdom",
  "en-us" => "English/United States",
  "en-au" => "English/Australian",
  "en-ca" => "English/Canada",
  "en-nz" => "English/New Zealand",
  "en-ie" => "English/Ireland",
  "en-za" => "English/South Africa",
  "en-jm" => "English/Jamaica",
  "en-bz" => "English/Belize",
  "en-tt" => "English/Trinidad",
  "et" => "Estonian",
  "fo" => "Faeroese",
  "fa" => "Farsi",
  "fi" => "Finnish",
  "fr" => "French",
  "fr-be" => "French/Belgium",
  "fr-fr" => "French/France",
  "fr-ch" => "French/Switzerland",
  "fr-ca" => "French/Canada",
  "fr-lu" => "French/Luxembourg",
  "gd" => "Gaelic",
  "gl" => "Galician",
  "de" => "German",
  "de-at" => "German/Austria",
  "de-de" => "German/Germany",
  "de-ch" => "German/Switzerland",
  "de-lu" => "German/Luxembourg",
  "de-li" => "German/Liechtenstein",
  "el" => "Greek",
  "he" => "Hebrew",
  "he-il" => "Hebrew/Israel",
  "hi" => "Hindi",
  "hu" => "Hungarian",
  "ie-ee" => "Internet Explorer/Easter Egg",
  "is" => "Icelandic",
  "id" => "Indonesian",
  "in" => "Indonesian",
  "ga" => "Irish",
  "it" => "Italian",
  "it-ch" => "Italian/ Switzerland",
  "ja" => "Japanese",
  "km" => "Khmer",
  "km-kh" => "Khmer/Cambodia",
  "ko" => "Korean",
  "lv" => "Latvian",
  "lt" => "Lithuanian",
  "mk" => "Macedonian",
  "ms" => "Malaysian",
  "mt" => "Maltese",
  "no" => "Norwegian",
  "pl" => "Polish",
  "pt" => "Portuguese",
  "pt-br" => "Portuguese/Brazil",
  "rm" => "Rhaeto-Romanic",
  "ro" => "Romanian",
  "ro-mo" => "Romanian/Moldavia",
  "ru" => "Russian",
  "ru-mo" => "Russian /Moldavia",
  "sr" => "Serbian",
  "sk" => "Slovack",
  "sl" => "Slovenian",
  "sb" => "Sorbian",
  "es" => "Spanish",
  "es-do" => "Spanish",
  "es-ar" => "Spanish/Argentina",
  "es-co" => "Spanish/Colombia",
  "es-mx" => "Spanish/Mexico",
  "es-es" => "Spanish/Spain",
  "es-gt" => "Spanish/Guatemala",
  "es-cr" => "Spanish/Costa Rica",
  "es-pa" => "Spanish/Panama",
  "es-ve" => "Spanish/Venezuela",
  "es-pe" => "Spanish/Peru",
  "es-ec" => "Spanish/Ecuador",
  "es-cl" => "Spanish/Chile",
  "es-uy" => "Spanish/Uruguay",
  "es-py" => "Spanish/Paraguay",
  "es-bo" => "Spanish/Bolivia",
  "es-sv" => "Spanish/El salvador",
  "es-hn" => "Spanish/Honduras",
  "es-ni" => "Spanish/Nicaragua",
  "es-pr" => "Spanish/Puerto Rico",
  "sx" => "Sutu",
  "sv" => "Swedish",
  "sv-se" => "Swedish/Sweden",
  "sv-fi" => "Swedish/Finland",
  "ts" => "Thai",
  "tn" => "Tswana",
  "tr" => "Turkish",
  "uk" => "Ukrainian",
  "ur" => "Urdu",
  "vi" => "Vietnamese",
  "xh" => "Xshosa",
  "ji" => "Yiddish",
  "zu" => "Zulu"
}