lib/browser_sniffer/patterns.rb in browser_sniffer-1.4.0 vs lib/browser_sniffer/patterns.rb in browser_sniffer-1.5.0

- old
+ new

@@ -58,13 +58,16 @@ %r{^Dalvik/[a-z0-9\.]+.*(Shopify\sPOS)\s(\d(?:\.\d+)*)(\/\d*)*}i, ], [:name, :version], [ # Shopify POS for Android (Native App) %r{.*(\sPOS\s-).*\s([\d+\.]+)(\/\d*)*\s}i, ], [[:name, 'Shopify POS'], :version], [ - # Shopify POS for Android (Native App) New Format + # Shopify POS for Android (React Native App) %r{(Shopify POS)\/([\d\.]+)[^\/]*\/(Android)\/(\d+)}i, ], [[:name, 'Shopify POS'], :version], [ + # Shopify POS for iOS (React Native App) + %r{(Shopify POS)\/([\d\.]+)[^\/]*\/(iOS)\/([\d\.]+)}i, + ], [[:name, 'Shopify POS'], :version], [ # Shopify POS for Android (SmartWebView) %r{.*(Shopify\sPOS)\s.*Android.*\s([\d+\.]+)(\/\d*)*\s}i, ], [:name, :version], [ # Shopify POS uses this user agent %r{^(okhttp)\/([\d\.]+)}i @@ -172,10 +175,16 @@ %r{.*(?:Shopify POS Next|Shopify POS)/(?:iPhone\sOS|iOS)/[\d\.]+ \((iPad)([\d,]+)}i ], [[:type, :tablet], :model], [ # Shopify POS Next for iPod touch %r{.*(?:Shopify POS Next|Shopify POS)/(?:iPhone\sOS|iOS)/[\d\.]+ \((iPod)([\d,]+)}i ], [[:type, :handheld], :model], [ + # Shopify POS for iOS iPhone/iPod (React Native App) + %r{.*Shopify POS\/[\d\.]+[^\/]*\/(iOS)\/[\d\.]+\/Apple\/((iPhone|iPod)[^\/]*)\/}i, + ], [[:type, :handheld], :model], [ + # Shopify POS for iOS iPad (React Native App) + %r{.*Shopify POS\/[\d\.]+[^\/]*\/(iOS)\/[\d\.]+\/Apple\/(iPad[^\/]*)\/}i, + ], [[:type, :tablet], :model], [ # Shopify Ping for iPhone %r{.*Shopify Ping/(?:iPhone\sOS|iOS)/[\d\.]+ \((iPhone)([\d,]+)}i ], [[:type, :handheld], :model], [ # Shopify Mobile for Android %r{.*Shopify Mobile\/(Android)\/[\d\.]+(?: \(debug(?:|-push)\))? \(Build \d+ with API \d+ on (.*?) ([^\)]*)\)}i @@ -295,9 +304,12 @@ %r{.*(Shopify Mobile)\/(?:iPhone\sOS|iOS)[\/\d\.]* \((iPhone|iPad|iPod).*\/([\d\.]+)\)}i ], [[:type, :ios], [:name, 'iOS'], :version], [ # Shopify POS Next for iPhone or iPad %r{.*(Shopify POS Next|Shopify POS)\/(?:iPhone\sOS|iOS)[\/\d\.]* \((iPhone|iPad|iPod).*\/([\d\.]+)\)}i ], [[:type, :ios], [:name, 'iOS'], :version], [ + # Shopify POS for iOS (React Native App) + %r{.*Shopify POS\/[\d\.]+[^\/]*\/(iOS)\/([\d\.]+)\/(Apple)\/(iPhone|iPad|iPod)[^\/]*\/}i + ], [[:type, :ios], :version, [:name, 'iOS']], [ # Shopify Ping for iOS %r{.*Shopify Ping\/(iOS)\/[\d\.]+ \(.*\/([\d\.]+)\)}i ], [[:type, :ios], :version, [:name, 'iOS']], [ # Shopify Mobile for Android %r{.*Shopify Mobile\/(Android)\/[\d\.]+ }i