Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ember-useragent

Package Overview
Dependencies
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ember-useragent

An Ember addon for Fastboot-enabled userAgent parsing via UAParser.js.

  • 0.12.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
3.6K
decreased by-6.46%
Maintainers
1
Weekly downloads
 
Created
Source

Ember UserAgent Build Status Ember Observer Score Download count all time npm

Ember UserAgent is an Ember Addon for UserAgent parsing via UAParser.js.

The userAgent service works in both browser & Fastboot environments and makes it easy to detect:

  • Device Type
  • Device Model
  • Browser
  • Operating System
  • Layout Engine
  • CPU architecture

Compatibility

  • Ember.js v3.8 or above
  • Ember CLI v2.13 or above
  • Node.js v8 or above

Installation

ember install ember-useragent

Usage

Ember UserAgent exposes a service and a template helper.

Service

import { inject as service } from '@ember/service';

export default class FooComponent extends Component {
  @service userAgent;
}
const userAgent = this.get('userAgent');

userAgent.get('browser.isChrome'); // Boolean
userAgent.get('engine.isWebKit'); // Boolean
userAgent.get('os.info'); // => { name: 'Ubuntu', version: '11.10' }
userAgent.get('device.info'); // => { model: 'iPhone 7', type: 'mobile', vendor: 'Apple'}

Helper

{{#if (user-agent "browser.isChrome")}}
  Chrome, here...
{{/if}}

Service Properties

The service exposes all of UAParser's functions, but also adds some properties for quick access.

browserdeviceengineoscpu
infoinfoinfoinfoarchitecture
isChromeisConsoleisWebKitisAndroid
isChromeHeadlessisDesktopisIOS
isEdgeisMobileisLinux
isFirefoxisTabletisMacOS
isIEisWindows
isSafari

The service also exposes the userAgent property, which contains the user agent string. You can overwrite this property, if you want to force a certain user agent string. All of the properties described above will update in accordance.

Manual Usage

Ember UserAgent auto imports ua-parser-js into your application using ember-auto-import:

import UAParser from 'ua-parser-js';

Injection

Prior to 0.11.0, this addon generated an initializer in app/initializers/user-agent.js that injected the userAgent service across all controllers, components and routes. This does not happen in >=0.11.0.

You can restore this behavior by manually performing these implicit injections (see #42), however this is highly discouraged, as this feature is deprecated by the upcoming Ember v4.0. If you were relying on these implicit injections, you should instead refactor your code to explicitly inject the userAgent service.

Using UAParser.js

For more information on how to use UAParser.js, please refer to the documentation.

Keywords

FAQs

Package last updated on 01 Mar 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc