From 317f11ed92575c63fbc64040bcf7b20edc1324ce Mon Sep 17 00:00:00 2001 From: Ray Schamp <ray@scratch.mit.edu> Date: Fri, 4 May 2018 23:28:55 -0400 Subject: [PATCH] Use bowser rather than platform bowser correctly detects Chrome Headless as Chrome, is already used by scratchr2, and is more actively maintained than platform. --- package.json | 2 +- src/containers/error-boundary.jsx | 4 ++-- src/lib/audio/shared-audio-context.js | 4 ++-- src/lib/supported-browser.js | 10 +++++----- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/package.json b/package.json index 2a5e742a7..8cf48af55 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,7 @@ "babel-plugin-transform-object-rest-spread": "^6.22.0", "babel-preset-env": "^1.6.1", "babel-preset-react": "^6.22.0", + "bowser": "1.9.3", "chromedriver": "2.38.2", "classnames": "2.2.5", "copy-webpack-plugin": "^4.5.1", @@ -63,7 +64,6 @@ "lodash.pick": "4.4.0", "minilog": "3.1.0", "mkdirp": "^0.5.1", - "platform": "1.3.5", "postcss-import": "^11.0.0", "postcss-loader": "^2.1.4", "postcss-simple-vars": "^4.0.0", diff --git a/src/containers/error-boundary.jsx b/src/containers/error-boundary.jsx index c140d0ee7..52e522d5a 100644 --- a/src/containers/error-boundary.jsx +++ b/src/containers/error-boundary.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import platform from 'platform'; +import bowser from 'bowser'; import BrowserModalComponent from '../components/browser-modal/browser-modal.jsx'; import CrashMessageComponent from '../components/crash-message/crash-message.jsx'; import log from '../lib/log.js'; @@ -36,7 +36,7 @@ class ErrorBoundary extends React.Component { analytics.event({ category: 'Unsupported Browser Error', action: `(Unsupported Browser) ${this.props.action}`, - label: `${platform.name} ${error.message}` + label: `${bowser.name} ${error.message}` }); } diff --git a/src/lib/audio/shared-audio-context.js b/src/lib/audio/shared-audio-context.js index f7a109ac7..b459e9e8f 100644 --- a/src/lib/audio/shared-audio-context.js +++ b/src/lib/audio/shared-audio-context.js @@ -1,8 +1,8 @@ import StartAudioContext from 'startaudiocontext'; -import platform from 'platform'; +import bowser from 'bowser'; let AUDIO_CONTEXT; -if (platform.name !== 'IE') { +if (bowser.name !== 'IE') { AUDIO_CONTEXT = new (window.AudioContext || window.webkitAudioContext)(); StartAudioContext(AUDIO_CONTEXT); diff --git a/src/lib/supported-browser.js b/src/lib/supported-browser.js index 507fb1dcf..891a67f05 100644 --- a/src/lib/supported-browser.js +++ b/src/lib/supported-browser.js @@ -1,14 +1,14 @@ -import platform from 'platform'; +import bowser from 'bowser'; /** * Helper function to determine if the browser is supported. * @returns {boolean} False if the platform is definitely not supported. */ export default function () { - if (platform.name === 'IE' || - platform.name === 'Opera' || - platform.name === 'Opera Mini' || - platform.name === 'Silk') { + if (bowser.name === 'IE' || + bowser.name === 'Opera' || + bowser.name === 'Opera Mini' || + bowser.name === 'Silk') { return false; } // @todo Should also test for versions of supported browsers -- GitLab