diff --git a/README.md b/README.md
index 1b2bf50d..e99d67d0 100644
--- a/README.md
+++ b/README.md
@@ -150,8 +150,8 @@ npm run localsetup
Parameters:
- `--build` Rebuilds app before installation
+ - `--preview` Build "Preview" app
- `--debug` Start with enabled development tools
- - `--beta` Build Beta application version
#### *build*
@@ -168,7 +168,7 @@ Parameters:
- `--macos` Build & Package for macOS
- `--windows` Build & Package for Windows
- `--linux` Build & Package for Linux
- - `--beta` Build Beta application version
+ - `--preview` Build "Preview" app
@@ -228,5 +228,5 @@ MIT
## Author
-[sidneys](http://sidneys.github.io) 2018
+[sidneys](http://sidneys.github.io) 2019
diff --git a/RELEASENOTES.json b/RELEASENOTES.json
index 43c9566d..3924e158 100644
--- a/RELEASENOTES.json
+++ b/RELEASENOTES.json
@@ -1,4 +1,28 @@
{
+ "8.9.5": {
+ "🍾 features": [
+ "implements `Web Audio`-based audio pipeline, superseding usages of `AudioElement`, fixing delayed/skipped notification sounds when running in the background",
+ "adds `PB for Desktop Preview` app build, allowing for installation of prerelease builds side-by-side with the regular app",
+ "optimizes rendering / backgrounding strategy for continuous background usage"
+ ],
+ "🚨 fixes": [
+ "adds fix for `electron/electron` upstream issue: [BrowserWindow.getAllWindows doesn't return windows that inherit BrowserWindow](https://github.com/electron/electron/issues/15456)",
+ "adds fix for `goldfire/howler.js` upstream issue: [Chrome 52 audio can't be heard after _autoResume](https://github.com/goldfire/howler.js/issues/593)"
+ ],
+ "💎 improvements": [
+ "upgrades `Favicon Finder` backend to latest upstream revision: https://pb-for-desktop-besticon.herokuapp.com",
+ "consolidated format of all enclosed audio assets (44.1 kHz, Wave/PCM, 16 bit, 2 channels)"
+ ],
+ "📒 documentation": [
+ "updates README",
+ "extends Pushbullet TypeScript declaration file"
+ ],
+ "👷 internals": [
+ "extends development & deployment toolchain",
+ "upgrades internal modules",
+ "upgrades external `node_modules`"
+ ]
+ },
"8.8.8": {
"🚨 fixes": [
"fixes intermittent rendering of Dock Icon Count badge when disabled ",
diff --git a/app/scripts/main/components/application.js b/app/scripts/main/components/application.js
index 76c47987..ffc0d47a 100755
--- a/app/scripts/main/components/application.js
+++ b/app/scripts/main/components/application.js
@@ -17,35 +17,6 @@ const path = require('path')
const electron = require('electron')
const { app, BrowserWindow, systemPreferences } = electron
-/**
- * Modules
- * External
- * @constant
- */
-const appRootPath = require('app-root-path')
-const logger = require('@sidneys/logger')({ write: true })
-const platformTools = require('@sidneys/platform-tools')
-/* eslint-disable no-unused-vars */
-const debugService = require('@sidneys/electron-debug-service')
-const updaterService = require('@sidneys/electron-updater-service')
-const powerService = require('@sidneys/electron-power-service')
-/* eslint-enable */
-
-/**
- * Modules
- * Configuration
- */
-appRootPath.setPath(path.join(__dirname, '..', '..', '..', '..'))
-
-/**
- * Modules
- * Internal
- * @constant
- */
-/* eslint-disable no-unused-vars */
-const globals = require(path.join(appRootPath['path'], 'app', 'scripts', 'main', 'components', 'globals'))
-/* eslint-enable */
-
/**
* HOTFIX
@@ -56,46 +27,79 @@ app.disableHardwareAcceleration()
/**
* HOTFIX
- * EventEmitter Memory Leak
- * @see {@link https://stackoverflow.com/questions/9768444/possible-eventemitter-memory-leak-detected}
+ * Chrome 66 Autoplay Policy
+ * @see {@link https://github.com/electron/electron/issues/13525}
*/
-events.EventEmitter.defaultMaxListeners = Infinity
+app.commandLine.appendSwitch('autoplay-policy', 'no-user-gesture-required')
/**
* HOTFIX
- * Chrome 66 Autoplay Policy
- * @see {@link https://github.com/electron/electron/issues/13525}
+ * Audio Playback
+ * @see {@link https://github.com/electron/electron/issues/12048}
*/
-app.commandLine.appendSwitch('autoplay-policy', 'no-user-gesture-required')
+// app.commandLine.appendSwitch('disable-renderer-backgrounding')
/**
* HOTFIX
* Electron Security Warning
- * @see {@link https://stackoverflow.com/questions/48854265/why-do-i-see-an-electron-security-warning-after-updating-my-electron-project-t}
+ * @see {@link https://stackoverflow.com/questions/48854265}
*/
process.env['ELECTRON_DISABLE_SECURITY_WARNINGS'] = 'true'
/**
* HOTFIX
- * Notification API not working (Windows)
+ * EventEmitter Memory Leak
+ * @see {@link https://stackoverflow.com/questions/9768444}
+ */
+events.EventEmitter.defaultMaxListeners = Infinity
+
+/**
+ * HOTFIX (Windows)
+ * Notification API not working
* @see {@link https://github.com/electron/electron/issues/10864}
*/
-if (platformTools.isWindows) {
- app.setAppUserModelId(global.manifest.appId)
-}
+process.platform === 'win32' ? app.setAppUserModelId(global.manifest.appId) : void 0
/**
- * HOTFIX
- * Missing App Indicator (Linux)
+ * HOTFIX (Linux)
+ * Missing App Indicator
* @see {@link https://github.com/electron/electron/issues/10427}
*/
-if (platformTools.isLinux) {
+if (process.platform === 'linux') {
if (process.env.XDG_DATA_DIRS.includes('plasma')) {
process.env.XDG_CURRENT_DESKTOP = 'Unity'
}
}
+/**
+ * Modules
+ * External
+ * @constant
+ */
+const appRootPath = require('app-root-path')
+const logger = require('@sidneys/logger')({ write: true })
+/* eslint-disable no-unused-vars */
+const debugService = require('@sidneys/electron-debug-service')
+const updaterService = require('@sidneys/electron-updater-service')
+const powerService = require('@sidneys/electron-power-service')
+/* eslint-enable */
+
+/**
+ * Modules
+ * Configuration
+ */
+appRootPath.setPath(path.join(__dirname, '..', '..', '..', '..'))
+
+/**
+ * Modules
+ * Internal
+ * @constant
+ */
+/* eslint-disable no-unused-vars */
+const globals = require(path.join(appRootPath['path'], 'app', 'scripts', 'main', 'components', 'globals'))
+/* eslint-enable */
+
/**
* Modules
* Internal
diff --git a/app/scripts/main/components/globals.js b/app/scripts/main/components/globals.js
index ff06f6ce..5c75abf8 100755
--- a/app/scripts/main/components/globals.js
+++ b/app/scripts/main/components/globals.js
@@ -23,9 +23,6 @@ const appRootPath = require('app-root-path')
const packageJson = require(path.join(appRootPath['path'], 'package.json'))
-/** @namespace global */
-
-
/**
* Manifest
* @global
diff --git a/app/scripts/main/services/snoozer-service.js b/app/scripts/main/services/snoozer-service.js
index 59b12e1c..116d2396 100644
--- a/app/scripts/main/services/snoozer-service.js
+++ b/app/scripts/main/services/snoozer-service.js
@@ -29,6 +29,9 @@ const notificationProvider = require('@sidneys/electron-notification-provider')
* @namespace Electron
*/
class SnoozerService {
+ /**
+ * @constructor
+ */
constructor() {
this.snoozeUntil = 0
}
diff --git a/app/scripts/main/windows/main-window.js b/app/scripts/main/windows/main-window.js
index 7afdf9ee..64044f81 100644
--- a/app/scripts/main/windows/main-window.js
+++ b/app/scripts/main/windows/main-window.js
@@ -45,18 +45,21 @@ const windowUrl = url.format({ protocol: 'file:', pathname: windowHtml })
/**
* @class MainWindow
- * @extends Electron.BrowserWindow
+ * @property {Electron.BrowserWindow} browserWindow
* @namespace Electron
*/
-class MainWindow extends BrowserWindow {
+class MainWindow {
+ /**
+ * @constructor
+ */
constructor() {
- super({
+ // Create BrowserWindow
+ this.browserWindow = new BrowserWindow({
acceptFirstMouse: true,
autoHideMenuBar: true,
// Hotfix: Window Translucency, https://github.com//electron/electron/issues/2170
// backgroundColor: platformTools.isMacOS ? void 0 : '#95A5A6',
backgroundColor: '#303030',
- backgroundThrottling: false,
frame: true,
hasShadow: platformTools.isMacOS ? true : void 0,
height: void 0,
@@ -78,10 +81,11 @@ class MainWindow extends BrowserWindow {
experimentalCanvasFeatures: true,
experimentalFeatures: true,
nodeIntegration: true,
+ nodeIntegrationInWorker: true,
partition: 'persist:app',
scrollBounce: platformTools.isMacOS ? true : void 0,
webaudio: true,
- webgl: false,
+ webgl: true,
webSecurity: false
},
width: void 0,
@@ -89,6 +93,7 @@ class MainWindow extends BrowserWindow {
y: void 0
})
+ // Init
this.init()
}
@@ -99,21 +104,21 @@ class MainWindow extends BrowserWindow {
logger.debug('init')
/**
- * @listens MainWindow#close
+ * @listens Electron.BrowserWindow#close
*/
- this.on('close', (event) => {
+ this.browserWindow.on('close', (event) => {
logger.debug('AppWindow#close')
if (global.state.isQuitting === false) {
event.preventDefault()
- this.hide()
+ this.browserWindow.hide()
}
})
/**
- * @listens MainWindow:will-navigate
+ * @listens Electron.webContents:will-navigate
*/
- this.webContents.on('will-navigate', (event, url) => {
+ this.browserWindow.webContents.on('will-navigate', (event, url) => {
logger.debug('AppWindow.webContents#will-navigate')
if (url) {
@@ -123,7 +128,7 @@ class MainWindow extends BrowserWindow {
})
- this.loadURL(windowUrl)
+ this.browserWindow.loadURL(windowUrl)
}
}
@@ -136,7 +141,8 @@ let init = () => {
// Ensure single instance
if (!global.mainWindow) {
- global.mainWindow = new MainWindow()
+ const mainWindow = new MainWindow()
+ global.mainWindow = mainWindow.browserWindow
}
}
diff --git a/app/scripts/renderer/pushbullet/clipboard.js b/app/scripts/renderer/pushbullet/clipboard.js
index 2aa41b27..c0565f35 100644
--- a/app/scripts/renderer/pushbullet/clipboard.js
+++ b/app/scripts/renderer/pushbullet/clipboard.js
@@ -38,11 +38,6 @@ const configurationManager = remote.require(path.join(appRootPath, 'app', 'scrip
*/
const defaultInterval = 2000
-
-/** @namespace pb.account.pro */
-/** @namespace pb.e2e.encrypt */
-
-
/**
* Retrieve PushbulletClipboardEnabled
* @return {Boolean} - Enabled
diff --git a/app/scripts/renderer/pushbullet/push.js b/app/scripts/renderer/pushbullet/push.js
index 7b9dba51..f779b385 100644
--- a/app/scripts/renderer/pushbullet/push.js
+++ b/app/scripts/renderer/pushbullet/push.js
@@ -27,7 +27,8 @@ const appRootPath = require('app-root-path')['path']
const dataUriToBuffer = require('data-uri-to-buffer')
const fileType = require('file-type')
const fileUrl = require('file-url')
-const getYouTubeID = require('get-youtube-id')
+const getYoutubeId = require('get-youtube-id')
+const { Howl, Howler } = require('howler')
const icojs = require('icojs')
const imageDownloader = require('image-downloader')
const isDebug = require('@sidneys/is-env')('debug')
@@ -40,6 +41,7 @@ const shortid = require('shortid')
const throttledQueue = require('throttled-queue')
const _ = require('lodash')
+
/**
* Modules
* Internal
@@ -59,36 +61,37 @@ const appTemporaryDirectory = (isDebug && process.defaultApp) ? appRootPath : os
/**
- * Urls
+ * General Defaults
* @constant
+ * @default
*/
-const besticonUrl = 'https://pb-for-desktop-besticon.herokuapp.com'
-const pushbulletUrl = 'https://www.pushbullet.com'
-const youtubeUrl = 'https://img.youtube.com'
+const recentPushesAmount = 5
/**
- * Defaults
+ * URL Defaults
* @constant
* @default
*/
-const recentPushesAmount = 5
-const besticonIconSize = 120
-const notificationInterval = 1000
-const notificationImageSize = 88
+const faviconEndpoint = 'https://pb-for-desktop-besticon.herokuapp.com/icon?fallback_icon_color=4AB367&formats=ico,png&size=1..120..200&url='
+const pushbulletIconEndpoint = 'https://www.pushbullet.com/img/deviceicons/'
+const youtubeThumbnailEndpoint = 'https://img.youtube.com/vi/'
+
/**
- * Notifications Queue
+ * Notifications Defaults
+ * @constant
+ * @default
* @global
*/
-let queueNotification = throttledQueue(1, notificationInterval, true)
-
+const notificationsInterval = 2000
+const notificationsIconWidth = 88
/**
- * Global Settings
+ * Notifications Globals
+ * @constant
* @global
*/
-let lastNotificationTimestamp
-let audioElement
+const notificationQueue = throttledQueue(1, notificationsInterval, true)
/**
@@ -154,36 +157,56 @@ let updateBadge = (total) => {
}
/**
- * Play Sound
+ * Play Sound File
+ * @param {Function=} callback - Callback
*/
-let playSound = () => {
- logger.debug('playSound')
+let playSoundFile = (callback = () => {}) => {
+ logger.debug('playSoundFile')
- // Retrieve State
+ // Retrieve pushbulletSoundEnabled
const pushbulletSoundEnabled = retrievePushbulletSoundEnabled()
// Skip if not enabled
if (!pushbulletSoundEnabled) { return }
- // Retrieve File, Volume
+ // Retrieve pushbulletSoundFile, pushbulletSoundVolume
const pushbulletSoundFile = retrievePushbulletSoundFile()
const pushbulletSoundVolume = retrievePushbulletSoundVolume()
- // Create File URL
+ // Create file:// URL
const url = fileUrl(pushbulletSoundFile)
- // Setup Audio Element
- audioElement = new Audio(url)
- audioElement.volume = pushbulletSoundVolume
+ // Create Sound
+ const sound = new Howl({
+ volume: pushbulletSoundVolume,
+ src: [ url ],
+ autoplay: true,
+ preload: true,
+ loop: false
+ })
- // Errorhandling
- audioElement.onerror = () => {
- logger.error('playSound', url, audioElement.error.message, audioElement.error.code)
- }
+ /** @listens sound:Event#loaderror */
+ sound.on('loaderror', (id, error) => {
+ logger.error('playSoundFile', 'sound#loaderror', id, error)
- // Play
- audioElement.play().then(() => {
- logger.debug('playSound', url)
+ // Callback
+ callback(error)
+ })
+
+ /** @listens sound:Event#playerror */
+ sound.on('playerror', (id, error) => {
+ logger.error('playSoundFile', 'sound#playerror', id, error)
+
+ // Callback
+ callback(error)
+ })
+
+ /** @listens sound:Event#end */
+ sound.on('end', (id) => {
+ logger.debug('playSoundFile', 'sound#end', id)
+
+ // Callback
+ callback()
})
}
@@ -232,7 +255,7 @@ let generateNotificationImage = (push) => {
for (let device of window.pb.api.devices.all) {
if (device.iden === deviceId) {
- iconDevice = `${pushbulletUrl}/img/deviceicons/${device.icon}.png`
+ iconDevice = `${pushbulletIconEndpoint}${device.icon}.png`
}
}
@@ -240,7 +263,7 @@ let generateNotificationImage = (push) => {
let iconSms
if (push.type === 'sms_changed') {
- iconSms = `${pushbulletUrl}/img/deviceicons/phone.png`
+ iconSms = `${pushbulletIconEndpoint}phone.png`
}
// Chat Image
@@ -262,12 +285,14 @@ let generateNotificationImage = (push) => {
let iconLink
if (push.type === 'link') {
- // Handle YouTube URLs (Thumbnail)
- if (getYouTubeID(push.url)) {
- iconLink = `${youtubeUrl}/vi/${getYouTubeID(push['url'])}/hqdefault.jpg`
+ // Is YouTube URL?
+ const youtubeId = getYoutubeId(push.url)
+ if (youtubeId) {
+ // Fetch YouTube Thumbnail
+ iconLink = `${youtubeThumbnailEndpoint}${youtubeId}/hqdefault.jpg`
} else {
- // Handle other URLS (Favicon)
- iconLink = `${besticonUrl}/icon?fallback_icon_color=4AB367&formats=ico,png&size=1..${besticonIconSize}..200&url=${push.url}`
+ // Fetch Favicon
+ iconLink = `${faviconEndpoint}${push.url}`
}
}
@@ -380,7 +405,7 @@ let decoratePush = (push) => {
// Copy Push Object
const decoratedPush = Object.assign({}, push)
- switch (decoratedPush.type) {
+ switch (String(decoratedPush.type)) {
// Link
case 'link':
decoratedPush.icon = generateNotificationImage(decoratedPush)
@@ -464,14 +489,14 @@ let decoratePush = (push) => {
* @param {Pushbullet.Push|Object=} push - Pushbullet Push
*/
let showNotification = (notificationOptions, push) => {
- logger.info('showNotification')
+ logger.debug('showNotification')
// Create Notification
const notification = notificationProvider.create(notificationOptions)
/** @listens notification#click */
notification.on('click', () => {
- logger.info('notification#click')
+ logger.debug('notification#click')
// Open url
if (notificationOptions.url) {
@@ -486,7 +511,7 @@ let showNotification = (notificationOptions, push) => {
/** @listens notification#close */
notification.on('close', () => {
- logger.info('notification#close')
+ logger.debug('notification#close')
// Dismiss within Pushbullet
if (push) {
@@ -496,7 +521,7 @@ let showNotification = (notificationOptions, push) => {
/** @listens notification#reply */
notification.on('reply', (event, message) => {
- logger.info('notification#reply')
+ logger.debug('notification#reply')
if (!!!message) {
logger.warn('reply message was empty')
@@ -507,14 +532,14 @@ let showNotification = (notificationOptions, push) => {
// SMS Reply
if (push.type === 'sms_changed') {
pbSms.reply(message, push.source_device_iden, pbSms.getMessageThreadId(push), (target) => {
- logger.info('reply message sent', 'to:', target)
+ logger.debug('reply message sent', 'to:', target)
})
}
// Chat Reply
if (push.type === 'note' || push.type === 'link' || push.type === 'file') {
createNotePush(message, push.sender_email, null, (target) => {
- logger.info('reply message sent', 'to:', target)
+ logger.debug('reply message sent', 'to:', target)
})
}
@@ -527,42 +552,43 @@ let showNotification = (notificationOptions, push) => {
/** @listens notification#show */
notification.on('show', (event) => {
- logger.info('notification#show')
+ logger.debug('notification#show')
+
+ logger.info('Notification', 'created:', notificationOptions.title, getTimestamp())
})
- // Queue Throttled Notification
- queueNotification(() => {
- logger.info('Triggering Notification at:', getTimestamp())
+ // Enqueue Notification
+ notificationQueue(() => {
+ // Play Sound
+ playSoundFile()
// Show Notification
notification.show()
-
- // Play Sound
- playSound()
})
}
/**
- * Write & resize image
- * @param {ArrayBuffer|Array|*} source - Source image
- * @param {String} target - Target file
+ * Asprect-Resize image and write it to disk
+ * @param {ArrayBuffer|Array|*} source - Source image path
+ * @param {String} target - Target image path
+ * @param {Number} width - Image width
* @param {Function=} callback - Callback
*/
-let writeResizeImage = (source, target, callback = () => {}) => {
- logger.debug('writeResizeImage')
+let resizeWriteImage = (source, target, width, callback = () => {}) => {
+ logger.debug('resizeWriteImage')
jimp.read(source, (error, result) => {
if (error) {
- logger.error('writeResizeImage', 'jimp.read', error)
+ logger.error('resizeWriteImage', 'jimp.read', error)
callback(error)
return
}
- result.resize(notificationImageSize, jimp.AUTO).write(target, (error) => {
+ result.resize(width, jimp.AUTO).write(target, (error) => {
if (error) {
- logger.error('writeResizeImage', 'result.resize', error)
+ logger.error('resizeWriteImage', 'result.resize', error)
callback(error)
return
@@ -571,7 +597,7 @@ let writeResizeImage = (source, target, callback = () => {}) => {
callback(null, target)
})
}).then((result) => {
- logger.debug('writeResizeImage', 'result', result)
+ logger.debug('resizeWriteImage', 'result', result)
})
}
@@ -633,7 +659,7 @@ let convertPushToNotification = (push) => {
// Image: Generate from Data URL
if (imageProtocol === 'data:') {
- writeResizeImage(dataUriToBuffer(imageUrl), imageFilepathTemporary, (error, imageFilepathConverted) => {
+ resizeWriteImage(dataUriToBuffer(imageUrl), imageFilepathTemporary, notificationsIconWidth, (error, imageFilepathConverted) => {
if (error) { return }
notificationOptions.icon = imageFilepathConverted
@@ -655,7 +681,7 @@ let convertPushToNotification = (push) => {
// From .PNG
if (isPng || isJpeg) {
- writeResizeImage(imageBuffer, imageFilepathDownloaded, (error, imageFilepathConverted) => {
+ resizeWriteImage(imageBuffer, imageFilepathDownloaded, notificationsIconWidth, (error, imageFilepathConverted) => {
if (error) { return }
notificationOptions.icon = imageFilepathConverted
@@ -669,7 +695,7 @@ let convertPushToNotification = (push) => {
if (isIco) {
icojs.parse(imageBuffer, 'image/png').then(imageList => {
const imageMaximum = imageList[imageList.length - 1]
- writeResizeImage(Buffer.from(imageMaximum.buffer), imageFilepathDownloaded, (error, imageFilepathConverted) => {
+ resizeWriteImage(Buffer.from(imageMaximum.buffer), imageFilepathDownloaded, notificationsIconWidth, (error, imageFilepathConverted) => {
if (error) { return }
notificationOptions.icon = imageFilepathConverted
@@ -746,24 +772,28 @@ let getRecentPushes = (queueLimit = 0) => {
* @param {Boolean} updateBadgeCount - Update badge counter
* @param {Function=} callback - Callback
*/
-let enqueuePush = (pushes, ignoreDate = false, updateBadgeCount = true, callback = () => {}) => {
- logger.debug('enqueuePush')
+let enqueuePushes = (pushes, ignoreDate = false, updateBadgeCount = true, callback = () => {}) => {
+ logger.debug('enqueuePushes')
pushes = _.isArray(pushes) ? pushes : [ pushes ]
if (pushes.length === 0) {
- logger.warn('enqueuePush', 'pushes list was empty')
+ logger.warn('enqueuePushes', 'pushes list was empty')
callback(null, 0)
return
}
+ // Retrieve pushbulletLastNotificationTimestamp
+ const pushbulletLastNotificationTimestamp = retrievePushbulletLastNotificationTimestamp()
+
+ // Init pushes variables
let nextPushesList = pushes
- let notifyAfter = lastNotificationTimestamp || 0
+ let notifyAfterTimestamp = pushbulletLastNotificationTimestamp || 0
- // Filter Pushes before lastNotificationTimestamp
+ // Filter Pushes before notifyAfterTimestamp
if (!!!ignoreDate) {
- nextPushesList = pushes.filter(push => push.created > notifyAfter)
+ nextPushesList = pushes.filter(push => push.created > notifyAfterTimestamp)
}
nextPushesList.forEach((push, pushIndex, pushList) => {
@@ -780,9 +810,8 @@ let enqueuePush = (pushes, ignoreDate = false, updateBadgeCount = true, callback
// Last Iteration?
if (pushIndex !== pushList.length - 1) { return }
- // Store lastNotificationTimestamp
- if (push.created > notifyAfter) {
- lastNotificationTimestamp = push.created
+ // Store pushbulletLastNotificationTimestamp
+ if (push.created > notifyAfterTimestamp) {
storePushbulletLastNotificationTimestamp(push.created)
}
@@ -805,7 +834,7 @@ let enqueueRecentPushes = (callback = () => {}) => {
const pushesList = getRecentPushes(recentPushesAmount)
- enqueuePush(pushesList, true, false, (error, count) => {
+ enqueuePushes(pushesList, true, false, (error, count) => {
if (error) {
logger.error('enqueueRecentPushes', error)
callback(error)
@@ -823,7 +852,9 @@ let enqueueRecentPushes = (callback = () => {}) => {
let init = () => {
logger.debug('init')
- lastNotificationTimestamp = retrievePushbulletLastNotificationTimestamp()
+ // Configure Web Audio
+ // https://github.com/goldfire/howler.js/issues/593
+ Howler.autoSuspend = false
}
@@ -848,7 +879,7 @@ window.addEventListener('load', () => {
* @exports
*/
module.exports = {
- enqueuePush: enqueuePush,
+ enqueuePushes: enqueuePushes,
enqueueRecentPushes: enqueueRecentPushes,
updateBadge: updateBadge
}
diff --git a/app/scripts/renderer/webviews/pushbullet-webview.js b/app/scripts/renderer/webviews/pushbullet-webview.js
index b49be6da..2bfb5452 100644
--- a/app/scripts/renderer/webviews/pushbullet-webview.js
+++ b/app/scripts/renderer/webviews/pushbullet-webview.js
@@ -217,7 +217,7 @@ let registerTextsProxy = () => {
const isTarget = value.data && value.data.hasOwnProperty('target_device_iden') ? appIsTargeted(value.data.target_device_iden) : true
if (isTarget) {
- pbPush.enqueuePush(value)
+ pbPush.enqueuePushes(value)
}
}
@@ -253,7 +253,7 @@ let registerPushProxy = () => {
const isIncoming = value.hasOwnProperty('direction') ? value.direction !== 'outgoing' : true
if (isTarget && isIncoming) {
- pbPush.enqueuePush(value)
+ pbPush.enqueuePushes(value)
}
}
@@ -339,7 +339,7 @@ let addWebsocketEventHandlers = () => {
case 'mirror':
/** SMS */
case 'sms_changed':
- pbPush.enqueuePush(message.push, true)
+ pbPush.enqueuePushes(message.push, true)
break
/** Clipboard */
case 'clip':
@@ -362,7 +362,7 @@ let loginPushbulletUser = () => {
let interval = setInterval(() => {
if (!(pb && pb.account && pb.account.active)) { return }
- logger.info('pushbullet', 'logged in')
+ logger.info('Pushbullet.com', 'login:', pb.account.email)
pb.DEBUG = isDebug
@@ -377,14 +377,14 @@ let loginPushbulletUser = () => {
return (item.created) > lastNotificationTimestamp
}).length
- logger.debug('loginPushbulletUser', 'unreadCount:', unreadCount)
+ logger.debug('Pushbullet.com', 'unread notifications:', unreadCount)
pbPush.updateBadge(unreadCount)
}
if (retrievePushbulletRepeatRecentNotifications()) {
pbPush.enqueueRecentPushes((err, count) => {
- logger.info('replayed pushes on after launch:', count)
+ logger.info('Pushbullet.com', 'replaying recent pushes')
})
}
@@ -410,7 +410,7 @@ let init = () => {
let interval = setInterval(() => {
if (!pb || !navigator.onLine) { return }
- logger.info('pushbullet', 'online')
+ logger.info('Pushbullet.com', 'connection established')
ipcRenderer.send('online', true)
ipcRenderer.sendToHost('online', true)
diff --git a/package-lock.json b/package-lock.json
index 166ee108..cae15a85 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "pb-for-desktop",
- "version": "8.8.8",
+ "version": "8.9.5",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -353,11 +353,11 @@
"integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw=="
},
"@sidneys/dom-tools": {
- "version": "1.36.0",
- "resolved": "https://registry.npmjs.org/@sidneys/dom-tools/-/dom-tools-1.36.0.tgz",
- "integrity": "sha512-SAN6m1PTWuh471TIi1PgUFJWme8Oj9xpAiyuTW6e6+sDz9/W6erBzQfNDnO3/clzTnPHWvd5CXTR6lvlTJmJSA==",
+ "version": "1.39.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/dom-tools/-/dom-tools-1.39.0.tgz",
+ "integrity": "sha512-IZVRnz/MHX+s19TGPK7QLudf8Urzv3cyBQvw9bbPFJYy4s5DpY34tcY190F/FMYNin2KLp2DhoMYA0DqgeIIBA==",
"requires": {
- "@sidneys/logger": "^1.47.0",
+ "@sidneys/logger": "^1.50.0",
"clean-css": "^4.2.1",
"file-url": "^2.0.2",
"lodash": "^4.17.11",
@@ -366,14 +366,14 @@
}
},
"@sidneys/electron-build": {
- "version": "1.59.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-build/-/electron-build-1.59.0.tgz",
- "integrity": "sha512-fOYo0XveBLwehqd4ypZFdUWOxQcV+W7LzUmJgB77/mDMmtkhlYGD9T7LqNTG7npkxEoaH8UWk9tugsCeoOX1Zw==",
- "requires": {
- "@sidneys/electron-deploy-github": "^1.45.0",
- "@sidneys/is-env": "^1.42.0",
- "@sidneys/logger": "^1.47.0",
- "@sidneys/releasenotes": "^1.39.0",
+ "version": "1.63.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-build/-/electron-build-1.63.0.tgz",
+ "integrity": "sha512-UvWJyWq0FriDVcE8oo8NN+8EikaV4G477IxhmueI+gnfieBojzVZYWkb/cgX1wcnNwJmrvWVT++/5NimXevbGA==",
+ "requires": {
+ "@sidneys/electron-deploy-github": "^1.48.0",
+ "@sidneys/is-env": "^1.45.0",
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/releasenotes": "^1.42.0",
"app-root-path": "^2.1.0",
"electron-builder": "^20.38.5",
"electron-icon-maker": "0.0.4",
@@ -395,23 +395,23 @@
}
},
"@sidneys/electron-debug-service": {
- "version": "0.39.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-debug-service/-/electron-debug-service-0.39.0.tgz",
- "integrity": "sha512-zEH0x9D6zhLZe7T8tm1jsazkGBSlhQEMcpU/9Ut4jgr4ZoEZaZIEjLYLyRDK2I3ejK45otMBAlpsSADw5q5oJg==",
+ "version": "0.42.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-debug-service/-/electron-debug-service-0.42.0.tgz",
+ "integrity": "sha512-rymXgCeypIKdGx7Nzx/RBqoIpKe/8bj1lCGT3B5Li07Pkh7hfNuotB1le+prBp598NmS+uO3nuuLYUCnRBit6g==",
"requires": {
- "@sidneys/is-env": "^1.42.0",
- "@sidneys/logger": "^1.47.0",
+ "@sidneys/is-env": "^1.45.0",
+ "@sidneys/logger": "^1.50.0",
"filesize": "^4.1.2",
"try-require": "^1.2.1"
}
},
"@sidneys/electron-deploy-github": {
- "version": "1.45.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-deploy-github/-/electron-deploy-github-1.45.0.tgz",
- "integrity": "sha512-tt7+jQRut10A38SRt039EMMPzuz4tyEajr4LAjzJiqXkeqz1S4DDNWN1rfavKQqWGHhdOpvpvXCQcGNQ8zufvw==",
+ "version": "1.48.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-deploy-github/-/electron-deploy-github-1.48.0.tgz",
+ "integrity": "sha512-G1UktEGbI6+mheO/MNzX2R6GiCcqhlUegVa8gxXB937MgxnWyU49DkZD3UjmCpsIgW5/2nPhbgxUXN1+BTivGA==",
"requires": {
- "@sidneys/logger": "^1.47.0",
- "@sidneys/releasenotes": "^1.39.0",
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/releasenotes": "^1.42.0",
"app-root-path": "^2.1.0",
"git-branch": "^2.0.1",
"globby": "^9.0.0",
@@ -422,56 +422,75 @@
}
},
"@sidneys/electron-dialog-provider": {
- "version": "1.40.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-dialog-provider/-/electron-dialog-provider-1.40.0.tgz",
- "integrity": "sha512-fYSC4q/NWOIjuEzPKogpVykDg+cjEdsmFKu8FFFvFQTvXv3v1ay636BOxvxlS+ysDwXO4ACIq03uvgCJvtQx4A==",
+ "version": "1.43.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-dialog-provider/-/electron-dialog-provider-1.43.0.tgz",
+ "integrity": "sha512-UGxGqtjblt6ma8vSBUwYPDznG3sAQAEcrjNADEp/g1cfSKSB/4/pfmJk4gQoMj+KsOj/FCpMeUY8WehQ4QS4oA==",
"requires": {
- "@sidneys/logger": "^1.47.0",
- "@sidneys/platform-tools": "^1.47.0"
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/platform-tools": "^1.51.0"
}
},
"@sidneys/electron-localsetup": {
- "version": "1.40.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-localsetup/-/electron-localsetup-1.40.0.tgz",
- "integrity": "sha512-1XB5wPGQS4K1HDB9sfhnSigXn8c7kU9t+YTEQm2Ld6fgROpa17Iwj+Na7cpc8nOa8xqmhDWMZmMUO0LhUia62w==",
+ "version": "1.44.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-localsetup/-/electron-localsetup-1.44.0.tgz",
+ "integrity": "sha512-WG1uVsoFXP4m5UX6d8gB/rySTYrNsz9sKCCj1Pipmp++t4pYOpokbWlLzihsP6GlDj9w9Lu/S9htfQTplEUSyg==",
"requires": {
- "@sidneys/is-env": "^1.42.0",
- "@sidneys/logger": "^1.47.0",
- "@sidneys/platform-tools": "^1.47.0",
+ "@sidneys/is-env": "^1.45.0",
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/platform-tools": "^1.51.0",
"app-root-path": "^2.1.0",
"fkill": "^5.3.0",
"fs-extra": "^7.0.1",
"globby": "^9.0.0",
- "minimist": "^1.2.0"
+ "jsonfile": "^5.0.0",
+ "lodash": "^4.17.11",
+ "minimist": "^1.2.0",
+ "try-require": "^1.2.1"
+ },
+ "dependencies": {
+ "jsonfile": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-5.0.0.tgz",
+ "integrity": "sha512-NQRZ5CRo74MhMMC3/3r5g2k4fjodJ/wh8MxjFbCViWKFjxrnudWSY5vomh+23ZaXzAS7J3fBZIR2dV6WbmfM0w==",
+ "requires": {
+ "graceful-fs": "^4.1.6",
+ "universalify": "^0.1.2"
+ }
+ },
+ "lodash": {
+ "version": "4.17.11",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
+ "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg=="
+ }
}
},
"@sidneys/electron-notification-provider": {
- "version": "0.40.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-notification-provider/-/electron-notification-provider-0.40.0.tgz",
- "integrity": "sha512-4f2rv1+we+rC1y/0ZcIy18TFueYBSNPs1Om5IfOQkdhY90yNZVu5pM29n4rZedTPA7UDwznt8Xqm9F7UyfQ4qw==",
+ "version": "0.43.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-notification-provider/-/electron-notification-provider-0.43.0.tgz",
+ "integrity": "sha512-XWP1Ndi7I3Agwm9jjzSH9ePN956QRc3zr41+gj2C4na8zdaovqCSsKYqvGt8iOZKnF/0zXzT3TR9JHnXUAVeqA==",
"requires": {
- "@sidneys/logger": "^1.47.0",
+ "@sidneys/logger": "^1.50.0",
"lodash": "^4.17.11"
}
},
"@sidneys/electron-power-service": {
- "version": "0.39.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-power-service/-/electron-power-service-0.39.0.tgz",
- "integrity": "sha512-hosp3ckP7BGOpwf/YHYfl+gFs4iGwPQbsVfgocDe1uyhG1+YkQFgGipazRV2giUBJ5kOhSgMoQVEKA0yULGYOg==",
+ "version": "0.42.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-power-service/-/electron-power-service-0.42.0.tgz",
+ "integrity": "sha512-S9gj/crBoyHwivnfKJS9t3lRpSKngru9xqHgV7NlF4rAfw+72wWd7G+Wg+QTZjnPfBoT4/mAo1PyOlo9xMyHQQ==",
"requires": {
- "@sidneys/logger": "^1.47.0",
- "@sidneys/platform-tools": "^1.47.0"
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/platform-tools": "^1.51.0"
}
},
"@sidneys/electron-updater-service": {
- "version": "0.54.0",
- "resolved": "https://registry.npmjs.org/@sidneys/electron-updater-service/-/electron-updater-service-0.54.0.tgz",
- "integrity": "sha512-RHHNpbF/zleICjCEIpmyVDnPttIfdve0DyUCVhJ1elGA/WiVIXdYXBI+2G4eps06F5t26tHt1K4UbIkF5Qn+OQ==",
- "requires": {
- "@sidneys/electron-dialog-provider": "^1.40.0",
- "@sidneys/electron-notification-provider": "0.40.0",
- "@sidneys/logger": "^1.47.0",
- "@sidneys/platform-tools": "^1.47.0",
+ "version": "0.57.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/electron-updater-service/-/electron-updater-service-0.57.0.tgz",
+ "integrity": "sha512-0T2G7BBupC46YfLiuEtydRbdQXQP4LkxZYPY04wseLn+7EPtspgzumHMfZMf2n+90HW/8b0KNTpj8gOc2LaEig==",
+ "requires": {
+ "@sidneys/electron-dialog-provider": "^1.43.0",
+ "@sidneys/electron-notification-provider": "0.43.0",
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/platform-tools": "^1.51.0",
"app-root-path": "^2.1.0",
"electron-store": "^2.0.0",
"electron-updater": "^4.0.6",
@@ -480,11 +499,11 @@
}
},
"@sidneys/is-env": {
- "version": "1.42.0",
- "resolved": "https://registry.npmjs.org/@sidneys/is-env/-/is-env-1.42.0.tgz",
- "integrity": "sha512-OV/P/fNr9abofnHKGZsXtEdsWhWgzcbI9aSI7G7z/lbYHbUIA4ZN9chHBYAEVJq3Z9Vl0Y7hdFsRc0eg1ju+Fg==",
+ "version": "1.45.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/is-env/-/is-env-1.45.0.tgz",
+ "integrity": "sha512-CjxexuwrQ7YO27O0LQTUrPjsvExl95tu8HuAZkDTqRSpwaS+t2bsoIUhWdcnPPDBcLndkstxHADOvbDV6RhZ7w==",
"requires": {
- "@sidneys/required-count": "^1.50.0",
+ "@sidneys/required-count": "^1.54.0",
"chalk": "^2.4.2",
"chalkline": "^0.0.5",
"lodash": "^4.17.11",
@@ -493,11 +512,11 @@
}
},
"@sidneys/logger": {
- "version": "1.47.0",
- "resolved": "https://registry.npmjs.org/@sidneys/logger/-/logger-1.47.0.tgz",
- "integrity": "sha512-vzrV8dIG2zV7LlubB4EQ6VW4VEoNmwr7J/jBz4LXL3MCYDHhmmus9hEpehjYL0ANMv5T/4/wlU4J1teC6rURxA==",
+ "version": "1.50.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/logger/-/logger-1.50.0.tgz",
+ "integrity": "sha512-vKUkPQ1CO/m/ie95hRazNxyUu3IbpBGO4ES3keEXm5iXeMpbA1MYkTSTTu/xen99iydkn/lFnvs0F1JuTNXY+w==",
"requires": {
- "@sidneys/is-env": "^1.42.0",
+ "@sidneys/is-env": "^1.45.0",
"appdirectory": "^0.1.0",
"chalk": "^2.4.2",
"fs-extra": "^7.0.1",
@@ -508,19 +527,19 @@
}
},
"@sidneys/platform-tools": {
- "version": "1.47.0",
- "resolved": "https://registry.npmjs.org/@sidneys/platform-tools/-/platform-tools-1.47.0.tgz",
- "integrity": "sha512-AOG0LQqyEwwReUMWYv3eH3MY5gaHhUfwtDGvdOx4fQUjBg52hA3UPbhR4CTUqCuTV7SxRfRQ5LeSLgeHX0qU3A==",
+ "version": "1.51.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/platform-tools/-/platform-tools-1.51.0.tgz",
+ "integrity": "sha512-G3UvzcNvGn5i2e4ntK+Hc0zh1EO5+2bcNXQDB4bM5PCvr5je0ds4Yd79DsubYj7sSydUBdbz2rA5KuZncWQOCA==",
"requires": {
"lodash": "^4.17.11"
}
},
"@sidneys/releasenotes": {
- "version": "1.39.0",
- "resolved": "https://registry.npmjs.org/@sidneys/releasenotes/-/releasenotes-1.39.0.tgz",
- "integrity": "sha512-NJuFa3uvJZvuZxV3uo/9qwoWqlPJESUsXgeKpBcvf0x6+x4GQruCa32QBQ5db4ne25U4n2YSmGQTqdhjFBImHw==",
+ "version": "1.42.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/releasenotes/-/releasenotes-1.42.0.tgz",
+ "integrity": "sha512-a33DmZoBOYBQ0+iIEdnGBhG3U/CCELzpMpguOIPWcfPIsgNg9U/tk+AvuvI5fX6GF+UGnnMCwQBW5f5kmlqMvQ==",
"requires": {
- "@sidneys/logger": "^1.47.0",
+ "@sidneys/logger": "^1.50.0",
"app-root-path": "^2.1.0",
"fs-extra": "^7.0.1",
"json2md": "^1.6.3",
@@ -529,9 +548,9 @@
}
},
"@sidneys/required-count": {
- "version": "1.50.0",
- "resolved": "https://registry.npmjs.org/@sidneys/required-count/-/required-count-1.50.0.tgz",
- "integrity": "sha512-voYT75xIAYlYdJitWfN1krodO0MYfR4YxFQf1b6bwlOAew+OvriUaKuuNs5IvHCUwZSf1zTp2ia3KAB1O6Fr6Q=="
+ "version": "1.54.0",
+ "resolved": "https://registry.npmjs.org/@sidneys/required-count/-/required-count-1.54.0.tgz",
+ "integrity": "sha512-Q+4gb3bCv6Qg6/MNyLY5/lH4TS8XTblclIxoFECM4q+34tkUMZd1TExUMXYKHd5RfdsA8KsCbEQH9XWASP809Q=="
},
"@sindresorhus/is": {
"version": "0.7.0",
@@ -605,6 +624,11 @@
"string-width": "^2.0.0"
}
},
+ "ansi-colors": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
+ "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw=="
+ },
"ansi-escapes": {
"version": "3.2.0",
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz",
@@ -1676,6 +1700,21 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
+ "define-properties": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
+ "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
+ "requires": {
+ "object-keys": "^1.0.12"
+ },
+ "dependencies": {
+ "object-keys": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz",
+ "integrity": "sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg=="
+ }
+ }
+ },
"define-property": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
@@ -1794,9 +1833,9 @@
}
},
"docdash": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.2.tgz",
- "integrity": "sha512-IEM57bWPLtVXpUeCKbiGvHsHtW9O9ZiiBPfeQDAZ7JdQiAF3aNWQoJ3e/+uJ63lHO009yn0tbJjtKpXJ2AURCQ==",
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/docdash/-/docdash-1.0.3.tgz",
+ "integrity": "sha512-gPepWBPJSWK70PRqOtxLvZ2FLJlw49DZASs73yqmM7uM45WEygQJmHPBrrQ9eLeEkgPKUzDv+sr2SHgQS1OQ0g==",
"dev": true
},
"doctrine": {
@@ -2225,6 +2264,36 @@
"is-arrayish": "^0.2.1"
}
},
+ "es-abstract": {
+ "version": "1.13.0",
+ "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz",
+ "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==",
+ "requires": {
+ "es-to-primitive": "^1.2.0",
+ "function-bind": "^1.1.1",
+ "has": "^1.0.3",
+ "is-callable": "^1.1.4",
+ "is-regex": "^1.0.4",
+ "object-keys": "^1.0.12"
+ },
+ "dependencies": {
+ "object-keys": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz",
+ "integrity": "sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg=="
+ }
+ }
+ },
+ "es-to-primitive": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz",
+ "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==",
+ "requires": {
+ "is-callable": "^1.1.4",
+ "is-date-object": "^1.0.1",
+ "is-symbol": "^1.0.2"
+ }
+ },
"es6-promise": {
"version": "4.2.6",
"resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz",
@@ -2236,9 +2305,9 @@
"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ="
},
"eslint": {
- "version": "5.14.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.14.0.tgz",
- "integrity": "sha512-jrOhiYyENRrRnWlMYANlGZTqb89r2FuRT+615AabBoajhNjeh9ywDNlh2LU9vTqf0WYN+L3xdXuIi7xuj/tK9w==",
+ "version": "5.14.1",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-5.14.1.tgz",
+ "integrity": "sha512-CyUMbmsjxedx8B0mr79mNOqetvkbij/zrXnFeK2zc3pGRn3/tibjiNAv/3UxFEyfMDjh+ZqTrJrEGBFiGfD5Og==",
"dev": true,
"requires": {
"@babel/code-frame": "^7.0.0",
@@ -2633,9 +2702,9 @@
}
},
"file-type": {
- "version": "10.7.1",
- "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.7.1.tgz",
- "integrity": "sha512-kUc4EE9q3MH6kx70KumPOvXLZLEJZzY9phEVg/bKWyGZ+OA9KoKZzFR4HS0yDmNv31sJkdf4hbTERIfplF9OxQ=="
+ "version": "10.8.0",
+ "resolved": "https://registry.npmjs.org/file-type/-/file-type-10.8.0.tgz",
+ "integrity": "sha512-287YScp3cpRWzhM+/E+A85O4FJi4dHus0eA6eBUzkRc08d/JAwqeczU/nwLstRuzzq/S7TqvQg9mhv7xVsdINQ=="
},
"file-url": {
"version": "2.0.2",
@@ -2728,6 +2797,21 @@
}
}
},
+ "flat": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz",
+ "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==",
+ "requires": {
+ "is-buffer": "~2.0.3"
+ },
+ "dependencies": {
+ "is-buffer": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz",
+ "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw=="
+ }
+ }
+ },
"flat-cache": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
@@ -2843,6 +2927,11 @@
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
},
+ "function-bind": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
+ "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
+ },
"functional-red-black-tree": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
@@ -3120,6 +3209,14 @@
}
}
},
+ "has": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
+ "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
+ "requires": {
+ "function-bind": "^1.1.1"
+ }
+ },
"has-ansi": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
@@ -3138,6 +3235,11 @@
"resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz",
"integrity": "sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw=="
},
+ "has-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz",
+ "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q="
+ },
"has-to-string-tag-x": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz",
@@ -3196,9 +3298,9 @@
}
},
"he": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz",
- "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0="
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
+ "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw=="
},
"hoek": {
"version": "2.16.3",
@@ -3218,6 +3320,11 @@
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz",
"integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w=="
},
+ "howler": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/howler/-/howler-2.1.1.tgz",
+ "integrity": "sha512-9nwyDCGxhAGMmNXDfMLv0M/uS/WUg2//jG6t96D8DqbbsVZgXQzsP/ZMItbWO/Fqg7Gg69kOv3xVSDzJdd7aqA=="
+ },
"http-cache-semantics": {
"version": "3.8.1",
"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz",
@@ -3635,6 +3742,11 @@
}
}
},
+ "is-date-object": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz",
+ "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY="
+ },
"is-descriptor": {
"version": "0.1.6",
"resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
@@ -3804,6 +3916,14 @@
"resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz",
"integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ="
},
+ "is-regex": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz",
+ "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=",
+ "requires": {
+ "has": "^1.0.1"
+ }
+ },
"is-retry-allowed": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz",
@@ -3814,6 +3934,14 @@
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
"integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ="
},
+ "is-symbol": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz",
+ "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==",
+ "requires": {
+ "has-symbols": "^1.0.0"
+ }
+ },
"is-typedarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
@@ -4157,6 +4285,14 @@
"resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz",
"integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw=="
},
+ "log-symbols": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
+ "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==",
+ "requires": {
+ "chalk": "^2.0.1"
+ }
+ },
"loud-rejection": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
@@ -4444,58 +4580,56 @@
}
},
"mocha": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz",
- "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==",
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-6.0.1.tgz",
+ "integrity": "sha512-tQzCxWqxSD6Oyg5r7Ptbev0yAMD8p+Vfh4snPFuiUsWqYj0eVYTDT2DkEY307FTj0WRlIWN9rWMMAUzRmijgVQ==",
"requires": {
+ "ansi-colors": "3.2.3",
"browser-stdout": "1.3.1",
- "commander": "2.15.1",
- "debug": "3.1.0",
+ "debug": "3.2.6",
"diff": "3.5.0",
"escape-string-regexp": "1.0.5",
- "glob": "7.1.2",
+ "findup-sync": "2.0.0",
+ "glob": "7.1.3",
"growl": "1.10.5",
- "he": "1.1.1",
+ "he": "1.2.0",
+ "js-yaml": "3.12.0",
+ "log-symbols": "2.2.0",
"minimatch": "3.0.4",
"mkdirp": "0.5.1",
- "supports-color": "5.4.0"
+ "ms": "2.1.1",
+ "node-environment-flags": "1.0.4",
+ "object.assign": "4.1.0",
+ "strip-json-comments": "2.0.1",
+ "supports-color": "6.0.0",
+ "which": "1.3.1",
+ "wide-align": "1.1.3",
+ "yargs": "12.0.5",
+ "yargs-parser": "11.1.1",
+ "yargs-unparser": "1.5.0"
},
"dependencies": {
- "commander": {
- "version": "2.15.1",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
- "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag=="
- },
"debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
"requires": {
- "ms": "2.0.0"
+ "ms": "^2.1.1"
}
},
- "glob": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
- "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+ "js-yaml": {
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz",
+ "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==",
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
}
},
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
- },
"supports-color": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
- "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
+ "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
"requires": {
"has-flag": "^3.0.0"
}
@@ -4626,6 +4760,14 @@
"resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
"integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ=="
},
+ "node-environment-flags": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.4.tgz",
+ "integrity": "sha512-M9rwCnWVLW7PX+NUWe3ejEdiLYinRpsEre9hMkU/6NS4h+EEulYaDH1gCEZ2gyXsmw+RXYDaV2JkkTNcsPDJ0Q==",
+ "requires": {
+ "object.getownpropertydescriptors": "^2.0.3"
+ }
+ },
"node-uuid": {
"version": "1.4.8",
"resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz",
@@ -4779,6 +4921,33 @@
"isobject": "^3.0.0"
}
},
+ "object.assign": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "requires": {
+ "define-properties": "^1.1.2",
+ "function-bind": "^1.1.1",
+ "has-symbols": "^1.0.0",
+ "object-keys": "^1.0.11"
+ },
+ "dependencies": {
+ "object-keys": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.0.tgz",
+ "integrity": "sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg=="
+ }
+ }
+ },
+ "object.getownpropertydescriptors": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz",
+ "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=",
+ "requires": {
+ "define-properties": "^1.1.2",
+ "es-abstract": "^1.5.1"
+ }
+ },
"object.pick": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
@@ -5002,6 +5171,32 @@
"mocha": "^5.2.0"
},
"dependencies": {
+ "commander": {
+ "version": "2.15.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
+ "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag=="
+ },
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "glob": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
"got": {
"version": "8.3.2",
"resolved": "https://registry.npmjs.org/got/-/got-8.3.2.tgz",
@@ -5026,6 +5221,11 @@
"url-to-options": "^1.0.1"
}
},
+ "he": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz",
+ "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0="
+ },
"into-stream": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/into-stream/-/into-stream-3.1.0.tgz",
@@ -5035,11 +5235,42 @@
"p-is-promise": "^1.1.0"
}
},
+ "mocha": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-5.2.0.tgz",
+ "integrity": "sha512-2IUgKDhc3J7Uug+FxMXuqIyYzH7gJjXECKe/w43IGgQHTSj3InJi+yAA7T24L9bQMRKiUEHxEX37G5JpVUGLcQ==",
+ "requires": {
+ "browser-stdout": "1.3.1",
+ "commander": "2.15.1",
+ "debug": "3.1.0",
+ "diff": "3.5.0",
+ "escape-string-regexp": "1.0.5",
+ "glob": "7.1.2",
+ "growl": "1.10.5",
+ "he": "1.1.1",
+ "minimatch": "3.0.4",
+ "mkdirp": "0.5.1",
+ "supports-color": "5.4.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
+ },
"prepend-http": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz",
"integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc="
},
+ "supports-color": {
+ "version": "5.4.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz",
+ "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==",
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ },
"url-parse-lax": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz",
@@ -5688,9 +5919,9 @@
},
"dependencies": {
"ajv": {
- "version": "6.9.1",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz",
- "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==",
+ "version": "6.9.2",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.2.tgz",
+ "integrity": "sha512-4UFy0/LgDo7Oa/+wOAlj44tp9K78u38E5/359eSrqEp1Z5PdVfimCcs7SluXMP755RUQu6d2b4AvF0R1C9RZjg==",
"requires": {
"fast-deep-equal": "^2.0.1",
"fast-json-stable-stringify": "^2.0.0",
@@ -7323,6 +7554,14 @@
"resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
},
+ "wide-align": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
+ "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
+ "requires": {
+ "string-width": "^1.0.2 || 2"
+ }
+ },
"widest-line": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.1.tgz",
@@ -7506,6 +7745,16 @@
}
}
},
+ "yargs-unparser": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.5.0.tgz",
+ "integrity": "sha512-HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==",
+ "requires": {
+ "flat": "^4.1.0",
+ "lodash": "^4.17.11",
+ "yargs": "^12.0.5"
+ }
+ },
"yauzl": {
"version": "2.4.1",
"resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz",
diff --git a/package.json b/package.json
index 7004a18b..f4addb8f 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,7 @@
"name": "pb-for-desktop",
"appId": "de.sidneys.pb-for-desktop",
"productName": "PB for Desktop",
- "version": "8.8.8",
+ "version": "8.9.5",
"description": "PB for Desktop is a Pushbullet desktop application for macOS, Windows and Linux",
"license": "MIT",
"homepage": "https://sidneys.github.io/pb-for-desktop",
@@ -46,19 +46,19 @@
],
"preferGlobal": true,
"dependencies": {
- "@sidneys/dom-tools": "^1.36.0",
- "@sidneys/electron-build": "^1.59.0",
- "@sidneys/electron-debug-service": "^0.39.0",
- "@sidneys/electron-deploy-github": "^1.45.0",
- "@sidneys/electron-dialog-provider": "^1.40.0",
- "@sidneys/electron-localsetup": "^1.40.0",
- "@sidneys/electron-notification-provider": "^0.40.0",
- "@sidneys/electron-power-service": "^0.39.0",
- "@sidneys/electron-updater-service": "^0.54.0",
- "@sidneys/is-env": "^1.42.0",
- "@sidneys/logger": "^1.47.0",
- "@sidneys/platform-tools": "^1.47.0",
- "@sidneys/releasenotes": "^1.39.0",
+ "@sidneys/dom-tools": "^1.39.0",
+ "@sidneys/electron-build": "^1.63.0",
+ "@sidneys/electron-debug-service": "^0.42.0",
+ "@sidneys/electron-deploy-github": "^1.48.0",
+ "@sidneys/electron-dialog-provider": "^1.43.0",
+ "@sidneys/electron-localsetup": "^1.44.0",
+ "@sidneys/electron-notification-provider": "^0.43.0",
+ "@sidneys/electron-power-service": "^0.42.0",
+ "@sidneys/electron-updater-service": "^0.57.0",
+ "@sidneys/is-env": "^1.45.0",
+ "@sidneys/logger": "^1.50.0",
+ "@sidneys/platform-tools": "^1.51.0",
+ "@sidneys/releasenotes": "^1.42.0",
"app-root-path": "^2.1.0",
"appdirectory": "^0.1.0",
"auto-launch": "git+https://sidneys@github.com/sidneys/node-auto-launch.git#bugfixes-maintainance",
@@ -67,16 +67,17 @@
"electron-editor-context-menu": "^1.1.1",
"electron-settings": "^3.2.0",
"electron-updater": "^4.0.6",
- "file-type": "^10.7.1",
+ "file-type": "^10.8.0",
"file-url": "^2.0.2",
"filesize": "^4.1.2",
"fs-extra": "^7.0.1",
"get-youtube-id": "^1.0.1",
+ "howler": "^2.1.1",
"icojs": "^0.12.3",
"image-downloader": "^3.4.2",
"jimp": "^0.6.0",
"lodash": "^4.17.11",
- "mocha": "^5.2.0",
+ "mocha": "^6.0.1",
"moment": "^2.24.0",
"opn": "^5.4.0",
"parse-domain": "^2.1.7",
@@ -89,9 +90,9 @@
},
"devDependencies": {
"@wabson/list-dependencies": "^0.1.0",
- "docdash": "^1.0.2",
+ "docdash": "^1.0.3",
"electron": "^4.0.5",
- "eslint": "^5.14.0",
+ "eslint": "^5.14.1",
"jsdoc": "^3.5.5"
},
"main": "./app/scripts/main/components/application.js",
diff --git a/pushbullet.d.ts b/pushbullet.d.ts
index 1fe92178..0b90f824 100644
--- a/pushbullet.d.ts
+++ b/pushbullet.d.ts
@@ -412,6 +412,47 @@ declare namespace Pushbullet {
}
}
+ /**
+ * User
+ */
+ interface User extends Item {
+ /**
+ * Email address
+ * Example: "elon@teslamotors.com"
+ */
+ email: string
+ /**
+ * Canonical email address
+ * Example: "elon@teslamotors.com"
+ */
+ email_normalized: string
+ /**
+ * Full name if available
+ * Example: "Elon Musk"
+ */
+ name: string
+ /**
+ * URL for image of user or placeholder image
+ * Example: "https://static.pushbullet.com/missing-image/55a7dc-45"
+ */
+ image_url: string
+ /**
+ * Maximum upload size in bytes
+ * Example: 26214400
+ */
+ max_upload_size: number
+ /**
+ * Number of users referred by this user
+ * Example: 2
+ */
+ referred_count: number
+ /**
+ * User iden for the user that referred the current user, if set
+ * Example: "ujlxm0aiz2"
+ */
+ referrer_iden: string
+ }
+
/**
* OAuth Grants (Connected Apps)
*/
@@ -782,7 +823,7 @@ declare namespace PushbulletBrowserClient {
invite_picker: Picker
invite_emails: {}
}
- account: PushbulletApiSuite.Account
+ account: Pushbullet.User
pushbox: {
target: object
scroll_lock: boolean
diff --git a/resources/graphics/icon-preview.png b/resources/graphics/icon-preview.png
new file mode 100644
index 00000000..1d2cf55d
Binary files /dev/null and b/resources/graphics/icon-preview.png differ
diff --git a/resources/graphics/icon.psd b/resources/graphics/icon.psd
index f22c2203..4440584d 100644
Binary files a/resources/graphics/icon.psd and b/resources/graphics/icon.psd differ
diff --git a/sounds/android-1.wav b/sounds/android-1.wav
index 952f7d3c..71462d86 100644
Binary files a/sounds/android-1.wav and b/sounds/android-1.wav differ
diff --git a/sounds/android-10.wav b/sounds/android-10.wav
index d805ad66..5b97b9ad 100644
Binary files a/sounds/android-10.wav and b/sounds/android-10.wav differ
diff --git a/sounds/android-11.wav b/sounds/android-11.wav
index 12982832..0bf8ab0f 100644
Binary files a/sounds/android-11.wav and b/sounds/android-11.wav differ
diff --git a/sounds/android-12.wav b/sounds/android-12.wav
index 3f00faa1..d08e9bb9 100644
Binary files a/sounds/android-12.wav and b/sounds/android-12.wav differ
diff --git a/sounds/android-14.wav b/sounds/android-14.wav
index 6fed63bb..e1c5a1f2 100644
Binary files a/sounds/android-14.wav and b/sounds/android-14.wav differ
diff --git a/sounds/android-15.wav b/sounds/android-15.wav
index 56dcb79f..ad4aaebf 100644
Binary files a/sounds/android-15.wav and b/sounds/android-15.wav differ
diff --git a/sounds/android-16.wav b/sounds/android-16.wav
index 7a68bd28..16518ef1 100644
Binary files a/sounds/android-16.wav and b/sounds/android-16.wav differ
diff --git a/sounds/android-17.wav b/sounds/android-17.wav
index c1f53b89..a8a62d14 100644
Binary files a/sounds/android-17.wav and b/sounds/android-17.wav differ
diff --git a/sounds/android-18.wav b/sounds/android-18.wav
index a6d4d3a9..cb1d4625 100644
Binary files a/sounds/android-18.wav and b/sounds/android-18.wav differ
diff --git a/sounds/android-19.wav b/sounds/android-19.wav
index 79c62314..e4539ff2 100644
Binary files a/sounds/android-19.wav and b/sounds/android-19.wav differ
diff --git a/sounds/android-2.wav b/sounds/android-2.wav
index 96ed839f..cafdb9aa 100644
Binary files a/sounds/android-2.wav and b/sounds/android-2.wav differ
diff --git a/sounds/android-3.wav b/sounds/android-3.wav
index 7e5041aa..8217acf4 100644
Binary files a/sounds/android-3.wav and b/sounds/android-3.wav differ
diff --git a/sounds/android-4.wav b/sounds/android-4.wav
index 91e2967a..409d9288 100644
Binary files a/sounds/android-4.wav and b/sounds/android-4.wav differ
diff --git a/sounds/android-5.wav b/sounds/android-5.wav
index a77a99fc..5818270f 100644
Binary files a/sounds/android-5.wav and b/sounds/android-5.wav differ
diff --git a/sounds/android-6.wav b/sounds/android-6.wav
index 1f9cf2c4..1ddc6a61 100644
Binary files a/sounds/android-6.wav and b/sounds/android-6.wav differ
diff --git a/sounds/android-7.wav b/sounds/android-7.wav
index 43510a1f..4ac3e281 100644
Binary files a/sounds/android-7.wav and b/sounds/android-7.wav differ
diff --git a/sounds/android-8.wav b/sounds/android-8.wav
index 52eb328a..e39cad86 100644
Binary files a/sounds/android-8.wav and b/sounds/android-8.wav differ
diff --git a/sounds/android-9.wav b/sounds/android-9.wav
index 80a992d0..71879e4f 100644
Binary files a/sounds/android-9.wav and b/sounds/android-9.wav differ
diff --git a/sounds/default.wav b/sounds/default.wav
index 1a88d7bc..74a6b34c 100644
Binary files a/sounds/default.wav and b/sounds/default.wav differ
diff --git a/sounds/generic-1.wav b/sounds/generic-1.wav
index aaa94dab..815a1e13 100644
Binary files a/sounds/generic-1.wav and b/sounds/generic-1.wav differ
diff --git a/sounds/generic-2.wav b/sounds/generic-2.wav
index 5e9b65f5..10b3206f 100644
Binary files a/sounds/generic-2.wav and b/sounds/generic-2.wav differ
diff --git a/sounds/generic-3.wav b/sounds/generic-3.wav
index 935b0d96..e48d3a22 100644
Binary files a/sounds/generic-3.wav and b/sounds/generic-3.wav differ
diff --git a/sounds/generic-4.wav b/sounds/generic-4.wav
index af9d3fcf..e87e7470 100644
Binary files a/sounds/generic-4.wav and b/sounds/generic-4.wav differ
diff --git a/sounds/ios-1.wav b/sounds/ios-1.wav
index d0800b2c..8e3e960b 100644
Binary files a/sounds/ios-1.wav and b/sounds/ios-1.wav differ
diff --git a/sounds/ios-10.wav b/sounds/ios-10.wav
index 6550e1e0..2bb316a5 100644
Binary files a/sounds/ios-10.wav and b/sounds/ios-10.wav differ
diff --git a/sounds/ios-2.wav b/sounds/ios-2.wav
index fcb7a870..6f990f0d 100644
Binary files a/sounds/ios-2.wav and b/sounds/ios-2.wav differ
diff --git a/sounds/ios-3.wav b/sounds/ios-3.wav
index 92579d65..502d0fcc 100644
Binary files a/sounds/ios-3.wav and b/sounds/ios-3.wav differ
diff --git a/sounds/ios-4.wav b/sounds/ios-4.wav
index 562ca736..c0f2205c 100644
Binary files a/sounds/ios-4.wav and b/sounds/ios-4.wav differ
diff --git a/sounds/ios-5.wav b/sounds/ios-5.wav
index 3f94b8d4..68ad64db 100644
Binary files a/sounds/ios-5.wav and b/sounds/ios-5.wav differ
diff --git a/sounds/ios-6.wav b/sounds/ios-6.wav
index 32acea41..46d7bf8c 100644
Binary files a/sounds/ios-6.wav and b/sounds/ios-6.wav differ
diff --git a/sounds/ios-7.wav b/sounds/ios-7.wav
index 7ad23633..8eb91f5e 100644
Binary files a/sounds/ios-7.wav and b/sounds/ios-7.wav differ
diff --git a/sounds/ios-8.wav b/sounds/ios-8.wav
index f300befe..056d9c7f 100644
Binary files a/sounds/ios-8.wav and b/sounds/ios-8.wav differ
diff --git a/sounds/ios-9.wav b/sounds/ios-9.wav
index 342379dd..6c98aa1a 100644
Binary files a/sounds/ios-9.wav and b/sounds/ios-9.wav differ
diff --git a/sounds/macos-1.wav b/sounds/macos-1.wav
index cdfa1d37..9bfee719 100644
Binary files a/sounds/macos-1.wav and b/sounds/macos-1.wav differ
diff --git a/sounds/macos-2.wav b/sounds/macos-2.wav
index 0a384843..d4205292 100644
Binary files a/sounds/macos-2.wav and b/sounds/macos-2.wav differ
diff --git a/sounds/macos-3.wav b/sounds/macos-3.wav
index 5ed13e52..f776ea97 100644
Binary files a/sounds/macos-3.wav and b/sounds/macos-3.wav differ
diff --git a/sounds/macos-4.wav b/sounds/macos-4.wav
index fd3e8dbe..580a9470 100644
Binary files a/sounds/macos-4.wav and b/sounds/macos-4.wav differ
diff --git a/sounds/nintendo-1.wav b/sounds/nintendo-1.wav
index b4e507f3..d1885039 100644
Binary files a/sounds/nintendo-1.wav and b/sounds/nintendo-1.wav differ
diff --git a/sounds/nintendo-2.wav b/sounds/nintendo-2.wav
index ddfc0cf2..0ba051df 100644
Binary files a/sounds/nintendo-2.wav and b/sounds/nintendo-2.wav differ
diff --git a/sounds/nintendo-3.wav b/sounds/nintendo-3.wav
index b6ebaa66..dc6a494d 100644
Binary files a/sounds/nintendo-3.wav and b/sounds/nintendo-3.wav differ
diff --git a/sounds/nintendo-4.wav b/sounds/nintendo-4.wav
index 3c135382..fa6a5e85 100644
Binary files a/sounds/nintendo-4.wav and b/sounds/nintendo-4.wav differ
diff --git a/sounds/nintendo-5.wav b/sounds/nintendo-5.wav
index 508b5d36..e6f6db8f 100644
Binary files a/sounds/nintendo-5.wav and b/sounds/nintendo-5.wav differ
diff --git a/sounds/slack-1.wav b/sounds/slack-1.wav
index a1cf33bf..1096e17e 100644
Binary files a/sounds/slack-1.wav and b/sounds/slack-1.wav differ
diff --git a/sounds/slack-2.wav b/sounds/slack-2.wav
index 109e85f8..0ff1596a 100644
Binary files a/sounds/slack-2.wav and b/sounds/slack-2.wav differ
diff --git a/sounds/slack-3.wav b/sounds/slack-3.wav
index b555116f..90869b2d 100644
Binary files a/sounds/slack-3.wav and b/sounds/slack-3.wav differ
diff --git a/sounds/slack-4.wav b/sounds/slack-4.wav
index caaa9bb8..761f2d76 100644
Binary files a/sounds/slack-4.wav and b/sounds/slack-4.wav differ
diff --git a/sounds/slack-5.wav b/sounds/slack-5.wav
index 43297233..4e7b24fe 100644
Binary files a/sounds/slack-5.wav and b/sounds/slack-5.wav differ
diff --git a/sounds/slack-6.wav b/sounds/slack-6.wav
index bad07cc1..0e070210 100644
Binary files a/sounds/slack-6.wav and b/sounds/slack-6.wav differ
diff --git a/sounds/slack-7.wav b/sounds/slack-7.wav
index 8dd89e21..4e9e51b2 100644
Binary files a/sounds/slack-7.wav and b/sounds/slack-7.wav differ
diff --git a/sounds/slack-8.wav b/sounds/slack-8.wav
index e7c7b2bc..b80eb1ed 100644
Binary files a/sounds/slack-8.wav and b/sounds/slack-8.wav differ
diff --git a/sounds/tesla-1.wav b/sounds/tesla-1.wav
index 9960f4f5..3a60825f 100644
Binary files a/sounds/tesla-1.wav and b/sounds/tesla-1.wav differ
diff --git a/sounds/tesla-2.wav b/sounds/tesla-2.wav
index 65f4dfa1..75b2a0dd 100644
Binary files a/sounds/tesla-2.wav and b/sounds/tesla-2.wav differ
diff --git a/sounds/tesla-3.wav b/sounds/tesla-3.wav
index 181cb2d7..f0dfc139 100644
Binary files a/sounds/tesla-3.wav and b/sounds/tesla-3.wav differ
diff --git a/sounds/voiceover-1.wav b/sounds/voiceover-1.wav
index 674c838a..819d1477 100644
Binary files a/sounds/voiceover-1.wav and b/sounds/voiceover-1.wav differ
diff --git a/sounds/voiceover-10.wav b/sounds/voiceover-10.wav
index 43334a52..b93db4fb 100644
Binary files a/sounds/voiceover-10.wav and b/sounds/voiceover-10.wav differ
diff --git a/sounds/voiceover-11.wav b/sounds/voiceover-11.wav
index 690edc74..f14950a4 100644
Binary files a/sounds/voiceover-11.wav and b/sounds/voiceover-11.wav differ
diff --git a/sounds/voiceover-12.wav b/sounds/voiceover-12.wav
index 69dccd51..900f7570 100644
Binary files a/sounds/voiceover-12.wav and b/sounds/voiceover-12.wav differ
diff --git a/sounds/voiceover-13.wav b/sounds/voiceover-13.wav
index 6ac7f1be..c61be6b7 100644
Binary files a/sounds/voiceover-13.wav and b/sounds/voiceover-13.wav differ
diff --git a/sounds/voiceover-14.wav b/sounds/voiceover-14.wav
index f973d8b6..71839431 100644
Binary files a/sounds/voiceover-14.wav and b/sounds/voiceover-14.wav differ
diff --git a/sounds/voiceover-15.wav b/sounds/voiceover-15.wav
index 29a388e4..132ee8cf 100644
Binary files a/sounds/voiceover-15.wav and b/sounds/voiceover-15.wav differ
diff --git a/sounds/voiceover-16.wav b/sounds/voiceover-16.wav
index abd4f339..ef9cdd18 100644
Binary files a/sounds/voiceover-16.wav and b/sounds/voiceover-16.wav differ
diff --git a/sounds/voiceover-17.wav b/sounds/voiceover-17.wav
index 56156378..39156195 100644
Binary files a/sounds/voiceover-17.wav and b/sounds/voiceover-17.wav differ
diff --git a/sounds/voiceover-18.wav b/sounds/voiceover-18.wav
index e8d8ec28..1afc7e30 100644
Binary files a/sounds/voiceover-18.wav and b/sounds/voiceover-18.wav differ
diff --git a/sounds/voiceover-19.wav b/sounds/voiceover-19.wav
index 353ed63f..ff558e93 100644
Binary files a/sounds/voiceover-19.wav and b/sounds/voiceover-19.wav differ
diff --git a/sounds/voiceover-2.wav b/sounds/voiceover-2.wav
index 5b2fc744..d9a65b33 100644
Binary files a/sounds/voiceover-2.wav and b/sounds/voiceover-2.wav differ
diff --git a/sounds/voiceover-3.wav b/sounds/voiceover-3.wav
index 50386ea9..41ee628d 100644
Binary files a/sounds/voiceover-3.wav and b/sounds/voiceover-3.wav differ
diff --git a/sounds/voiceover-4.wav b/sounds/voiceover-4.wav
index 9e273665..73564070 100644
Binary files a/sounds/voiceover-4.wav and b/sounds/voiceover-4.wav differ
diff --git a/sounds/voiceover-5.wav b/sounds/voiceover-5.wav
index e4e3fbf8..a7840329 100644
Binary files a/sounds/voiceover-5.wav and b/sounds/voiceover-5.wav differ
diff --git a/sounds/voiceover-6.wav b/sounds/voiceover-6.wav
index b56fb57e..078ef922 100644
Binary files a/sounds/voiceover-6.wav and b/sounds/voiceover-6.wav differ
diff --git a/sounds/voiceover-7.wav b/sounds/voiceover-7.wav
index 6881f2c6..6ca3cc02 100644
Binary files a/sounds/voiceover-7.wav and b/sounds/voiceover-7.wav differ
diff --git a/sounds/voiceover-8.wav b/sounds/voiceover-8.wav
index 5adb1d28..e3df7834 100644
Binary files a/sounds/voiceover-8.wav and b/sounds/voiceover-8.wav differ
diff --git a/sounds/voiceover-9.wav b/sounds/voiceover-9.wav
index ebeb7d83..8f843066 100644
Binary files a/sounds/voiceover-9.wav and b/sounds/voiceover-9.wav differ
diff --git a/sounds/windows-1.wav b/sounds/windows-1.wav
index d070d582..2f7c26f9 100644
Binary files a/sounds/windows-1.wav and b/sounds/windows-1.wav differ
diff --git a/sounds/windows-10.wav b/sounds/windows-10.wav
index 693bf817..fd0e464d 100644
Binary files a/sounds/windows-10.wav and b/sounds/windows-10.wav differ
diff --git a/sounds/windows-11.wav b/sounds/windows-11.wav
index 7afea9ca..887b0219 100644
Binary files a/sounds/windows-11.wav and b/sounds/windows-11.wav differ
diff --git a/sounds/windows-12.wav b/sounds/windows-12.wav
index fb32fdc1..732c8fc9 100644
Binary files a/sounds/windows-12.wav and b/sounds/windows-12.wav differ
diff --git a/sounds/windows-14.wav b/sounds/windows-14.wav
index dd597f18..8329fcc1 100644
Binary files a/sounds/windows-14.wav and b/sounds/windows-14.wav differ
diff --git a/sounds/windows-15.wav b/sounds/windows-15.wav
index 91e59007..a3947f03 100644
Binary files a/sounds/windows-15.wav and b/sounds/windows-15.wav differ
diff --git a/sounds/windows-16.wav b/sounds/windows-16.wav
index 6869c280..cf6b3606 100644
Binary files a/sounds/windows-16.wav and b/sounds/windows-16.wav differ
diff --git a/sounds/windows-17.wav b/sounds/windows-17.wav
index 2665671b..87f6d45c 100644
Binary files a/sounds/windows-17.wav and b/sounds/windows-17.wav differ
diff --git a/sounds/windows-18.wav b/sounds/windows-18.wav
index dc0b8e7e..be2279dd 100644
Binary files a/sounds/windows-18.wav and b/sounds/windows-18.wav differ
diff --git a/sounds/windows-19.wav b/sounds/windows-19.wav
index 9aedf564..48cfb47b 100644
Binary files a/sounds/windows-19.wav and b/sounds/windows-19.wav differ
diff --git a/sounds/windows-2.wav b/sounds/windows-2.wav
index c5a704b7..2ef65f14 100644
Binary files a/sounds/windows-2.wav and b/sounds/windows-2.wav differ
diff --git a/sounds/windows-20.wav b/sounds/windows-20.wav
index da81d68a..4ac73955 100644
Binary files a/sounds/windows-20.wav and b/sounds/windows-20.wav differ
diff --git a/sounds/windows-21.wav b/sounds/windows-21.wav
index 7ef2c1e7..5c819900 100644
Binary files a/sounds/windows-21.wav and b/sounds/windows-21.wav differ
diff --git a/sounds/windows-3.wav b/sounds/windows-3.wav
index f29bb6c4..9eeba620 100644
Binary files a/sounds/windows-3.wav and b/sounds/windows-3.wav differ
diff --git a/sounds/windows-4.wav b/sounds/windows-4.wav
index b2e2f2d9..fc903c96 100644
Binary files a/sounds/windows-4.wav and b/sounds/windows-4.wav differ
diff --git a/sounds/windows-5.wav b/sounds/windows-5.wav
index ef33b032..935c269d 100644
Binary files a/sounds/windows-5.wav and b/sounds/windows-5.wav differ
diff --git a/sounds/windows-6.wav b/sounds/windows-6.wav
index 4c152a71..f403a2ea 100644
Binary files a/sounds/windows-6.wav and b/sounds/windows-6.wav differ
diff --git a/sounds/windows-7.wav b/sounds/windows-7.wav
index 5fa01563..fa99cdaa 100644
Binary files a/sounds/windows-7.wav and b/sounds/windows-7.wav differ
diff --git a/sounds/windows-8.wav b/sounds/windows-8.wav
index 5975baf3..f333f7ab 100644
Binary files a/sounds/windows-8.wav and b/sounds/windows-8.wav differ
diff --git a/sounds/windows-9.wav b/sounds/windows-9.wav
index 3734be3b..4b93342f 100644
Binary files a/sounds/windows-9.wav and b/sounds/windows-9.wav differ
diff --git a/yarn.lock b/yarn.lock
index 45619bcd..65a500de 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -296,27 +296,27 @@
resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b"
integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==
-"@sidneys/dom-tools@^1.36.0":
- version "1.36.0"
- resolved "https://registry.yarnpkg.com/@sidneys/dom-tools/-/dom-tools-1.36.0.tgz#f78ed27a5c91055d27bc3ec287561c1255a5f10e"
- integrity sha512-SAN6m1PTWuh471TIi1PgUFJWme8Oj9xpAiyuTW6e6+sDz9/W6erBzQfNDnO3/clzTnPHWvd5CXTR6lvlTJmJSA==
+"@sidneys/dom-tools@^1.39.0":
+ version "1.39.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/dom-tools/-/dom-tools-1.39.0.tgz#53a6db406245a11a775a5b239a238d13a6dc3c60"
+ integrity sha512-IZVRnz/MHX+s19TGPK7QLudf8Urzv3cyBQvw9bbPFJYy4s5DpY34tcY190F/FMYNin2KLp2DhoMYA0DqgeIIBA==
dependencies:
- "@sidneys/logger" "^1.47.0"
+ "@sidneys/logger" "^1.50.0"
clean-css "^4.2.1"
file-url "^2.0.2"
lodash "^4.17.11"
moment "^2.24.0"
moment-duration-format "^2.2.2"
-"@sidneys/electron-build@^1.59.0":
- version "1.59.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-build/-/electron-build-1.59.0.tgz#ac576c150e7cbcaa29e18a5480b0f7bb22755a01"
- integrity sha512-fOYo0XveBLwehqd4ypZFdUWOxQcV+W7LzUmJgB77/mDMmtkhlYGD9T7LqNTG7npkxEoaH8UWk9tugsCeoOX1Zw==
+"@sidneys/electron-build@^1.63.0":
+ version "1.63.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-build/-/electron-build-1.63.0.tgz#9edd66f4c73e45313702fadc48fd553023960119"
+ integrity sha512-UvWJyWq0FriDVcE8oo8NN+8EikaV4G477IxhmueI+gnfieBojzVZYWkb/cgX1wcnNwJmrvWVT++/5NimXevbGA==
dependencies:
- "@sidneys/electron-deploy-github" "^1.45.0"
- "@sidneys/is-env" "^1.42.0"
- "@sidneys/logger" "^1.47.0"
- "@sidneys/releasenotes" "^1.39.0"
+ "@sidneys/electron-deploy-github" "^1.48.0"
+ "@sidneys/is-env" "^1.45.0"
+ "@sidneys/logger" "^1.50.0"
+ "@sidneys/releasenotes" "^1.42.0"
app-root-path "^2.1.0"
electron-builder "^20.38.5"
electron-icon-maker "0.0.4"
@@ -325,23 +325,23 @@
lodash "^4.17.11"
minimist "^1.2.0"
-"@sidneys/electron-debug-service@^0.39.0":
- version "0.39.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-debug-service/-/electron-debug-service-0.39.0.tgz#f5e711080054613a0d161f1d4d87144240688319"
- integrity sha512-zEH0x9D6zhLZe7T8tm1jsazkGBSlhQEMcpU/9Ut4jgr4ZoEZaZIEjLYLyRDK2I3ejK45otMBAlpsSADw5q5oJg==
+"@sidneys/electron-debug-service@^0.42.0":
+ version "0.42.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-debug-service/-/electron-debug-service-0.42.0.tgz#3f59c70bf1d574e65f4216754b7394f5f133731e"
+ integrity sha512-rymXgCeypIKdGx7Nzx/RBqoIpKe/8bj1lCGT3B5Li07Pkh7hfNuotB1le+prBp598NmS+uO3nuuLYUCnRBit6g==
dependencies:
- "@sidneys/is-env" "^1.42.0"
- "@sidneys/logger" "^1.47.0"
+ "@sidneys/is-env" "^1.45.0"
+ "@sidneys/logger" "^1.50.0"
filesize "^4.1.2"
try-require "^1.2.1"
-"@sidneys/electron-deploy-github@^1.45.0":
- version "1.45.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-deploy-github/-/electron-deploy-github-1.45.0.tgz#d0ec6336ce159b66c1ca9de9a25d213422eed2bf"
- integrity sha512-tt7+jQRut10A38SRt039EMMPzuz4tyEajr4LAjzJiqXkeqz1S4DDNWN1rfavKQqWGHhdOpvpvXCQcGNQ8zufvw==
+"@sidneys/electron-deploy-github@^1.48.0":
+ version "1.48.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-deploy-github/-/electron-deploy-github-1.48.0.tgz#562653fe1aebaef7096729dfd8a3ba3bd72788f3"
+ integrity sha512-G1UktEGbI6+mheO/MNzX2R6GiCcqhlUegVa8gxXB937MgxnWyU49DkZD3UjmCpsIgW5/2nPhbgxUXN1+BTivGA==
dependencies:
- "@sidneys/logger" "^1.47.0"
- "@sidneys/releasenotes" "^1.39.0"
+ "@sidneys/logger" "^1.50.0"
+ "@sidneys/releasenotes" "^1.42.0"
app-root-path "^2.1.0"
git-branch "^2.0.1"
globby "^9.0.0"
@@ -350,77 +350,80 @@
progress "^2.0.3"
publish-release sidneys/publish-release.git#pin-dependencies
-"@sidneys/electron-dialog-provider@^1.40.0":
- version "1.40.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-dialog-provider/-/electron-dialog-provider-1.40.0.tgz#beda4e764055b75740bfb2d51cf8ade27f293e9e"
- integrity sha512-fYSC4q/NWOIjuEzPKogpVykDg+cjEdsmFKu8FFFvFQTvXv3v1ay636BOxvxlS+ysDwXO4ACIq03uvgCJvtQx4A==
+"@sidneys/electron-dialog-provider@^1.43.0":
+ version "1.43.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-dialog-provider/-/electron-dialog-provider-1.43.0.tgz#dfca9b3f7cdf96f869ae6c5636a731522b1ba7d1"
+ integrity sha512-UGxGqtjblt6ma8vSBUwYPDznG3sAQAEcrjNADEp/g1cfSKSB/4/pfmJk4gQoMj+KsOj/FCpMeUY8WehQ4QS4oA==
dependencies:
- "@sidneys/logger" "^1.47.0"
- "@sidneys/platform-tools" "^1.47.0"
+ "@sidneys/logger" "^1.50.0"
+ "@sidneys/platform-tools" "^1.51.0"
-"@sidneys/electron-localsetup@^1.40.0":
- version "1.40.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-localsetup/-/electron-localsetup-1.40.0.tgz#fa6fb4a8ad059ed344250b7eb931849bdc9a83a3"
- integrity sha512-1XB5wPGQS4K1HDB9sfhnSigXn8c7kU9t+YTEQm2Ld6fgROpa17Iwj+Na7cpc8nOa8xqmhDWMZmMUO0LhUia62w==
+"@sidneys/electron-localsetup@^1.44.0":
+ version "1.44.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-localsetup/-/electron-localsetup-1.44.0.tgz#13270f7c9b3b947c94fb339995197e8552fdb392"
+ integrity sha512-WG1uVsoFXP4m5UX6d8gB/rySTYrNsz9sKCCj1Pipmp++t4pYOpokbWlLzihsP6GlDj9w9Lu/S9htfQTplEUSyg==
dependencies:
- "@sidneys/is-env" "^1.42.0"
- "@sidneys/logger" "^1.47.0"
- "@sidneys/platform-tools" "^1.47.0"
+ "@sidneys/is-env" "^1.45.0"
+ "@sidneys/logger" "^1.50.0"
+ "@sidneys/platform-tools" "^1.51.0"
app-root-path "^2.1.0"
fkill "^5.3.0"
fs-extra "^7.0.1"
globby "^9.0.0"
+ jsonfile latest
+ lodash latest
minimist "^1.2.0"
+ try-require "^1.2.1"
-"@sidneys/electron-notification-provider@0.40.0", "@sidneys/electron-notification-provider@^0.40.0":
- version "0.40.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-notification-provider/-/electron-notification-provider-0.40.0.tgz#1429e070554a7a1472e35db861e62a613eb6b20b"
- integrity sha512-4f2rv1+we+rC1y/0ZcIy18TFueYBSNPs1Om5IfOQkdhY90yNZVu5pM29n4rZedTPA7UDwznt8Xqm9F7UyfQ4qw==
+"@sidneys/electron-notification-provider@0.43.0", "@sidneys/electron-notification-provider@^0.43.0":
+ version "0.43.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-notification-provider/-/electron-notification-provider-0.43.0.tgz#82fa9aa9bf9eb4eaa30cc87413dc86610b3fc03d"
+ integrity sha512-XWP1Ndi7I3Agwm9jjzSH9ePN956QRc3zr41+gj2C4na8zdaovqCSsKYqvGt8iOZKnF/0zXzT3TR9JHnXUAVeqA==
dependencies:
- "@sidneys/logger" "^1.47.0"
+ "@sidneys/logger" "^1.50.0"
lodash "^4.17.11"
-"@sidneys/electron-power-service@^0.39.0":
- version "0.39.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-power-service/-/electron-power-service-0.39.0.tgz#c92b800efd6d68924d26f83c1ccbdeb0f79d1698"
- integrity sha512-hosp3ckP7BGOpwf/YHYfl+gFs4iGwPQbsVfgocDe1uyhG1+YkQFgGipazRV2giUBJ5kOhSgMoQVEKA0yULGYOg==
+"@sidneys/electron-power-service@^0.42.0":
+ version "0.42.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-power-service/-/electron-power-service-0.42.0.tgz#bb20f36c9d34b8d5e17d331bad03fcb999edd16f"
+ integrity sha512-S9gj/crBoyHwivnfKJS9t3lRpSKngru9xqHgV7NlF4rAfw+72wWd7G+Wg+QTZjnPfBoT4/mAo1PyOlo9xMyHQQ==
dependencies:
- "@sidneys/logger" "^1.47.0"
- "@sidneys/platform-tools" "^1.47.0"
+ "@sidneys/logger" "^1.50.0"
+ "@sidneys/platform-tools" "^1.51.0"
-"@sidneys/electron-updater-service@^0.54.0":
- version "0.54.0"
- resolved "https://registry.yarnpkg.com/@sidneys/electron-updater-service/-/electron-updater-service-0.54.0.tgz#e02ccbdfec753fef5ab23916f7c032b71002c929"
- integrity sha512-RHHNpbF/zleICjCEIpmyVDnPttIfdve0DyUCVhJ1elGA/WiVIXdYXBI+2G4eps06F5t26tHt1K4UbIkF5Qn+OQ==
+"@sidneys/electron-updater-service@^0.57.0":
+ version "0.57.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/electron-updater-service/-/electron-updater-service-0.57.0.tgz#ee5b95220991b19f34a8622a6581d50366db1d05"
+ integrity sha512-0T2G7BBupC46YfLiuEtydRbdQXQP4LkxZYPY04wseLn+7EPtspgzumHMfZMf2n+90HW/8b0KNTpj8gOc2LaEig==
dependencies:
- "@sidneys/electron-dialog-provider" "^1.40.0"
- "@sidneys/electron-notification-provider" "0.40.0"
- "@sidneys/logger" "^1.47.0"
- "@sidneys/platform-tools" "^1.47.0"
+ "@sidneys/electron-dialog-provider" "^1.43.0"
+ "@sidneys/electron-notification-provider" "0.43.0"
+ "@sidneys/logger" "^1.50.0"
+ "@sidneys/platform-tools" "^1.51.0"
app-root-path "^2.1.0"
electron-store "^2.0.0"
electron-updater "^4.0.6"
remove-markdown "^0.3.0"
semver-compare "^1.0.0"
-"@sidneys/is-env@^1.42.0":
- version "1.42.0"
- resolved "https://registry.yarnpkg.com/@sidneys/is-env/-/is-env-1.42.0.tgz#793419adf1e55ddb1a5ed1d396f7c5d7a463f6a6"
- integrity sha512-OV/P/fNr9abofnHKGZsXtEdsWhWgzcbI9aSI7G7z/lbYHbUIA4ZN9chHBYAEVJq3Z9Vl0Y7hdFsRc0eg1ju+Fg==
+"@sidneys/is-env@^1.45.0":
+ version "1.45.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/is-env/-/is-env-1.45.0.tgz#61aa03a8f59b43a5c31523b655bdcff97530b151"
+ integrity sha512-CjxexuwrQ7YO27O0LQTUrPjsvExl95tu8HuAZkDTqRSpwaS+t2bsoIUhWdcnPPDBcLndkstxHADOvbDV6RhZ7w==
dependencies:
- "@sidneys/required-count" "^1.50.0"
+ "@sidneys/required-count" "^1.54.0"
chalk "^2.4.2"
chalkline "^0.0.5"
lodash "^4.17.11"
minimist "^1.2.0"
try-require "^1.2.1"
-"@sidneys/logger@^1.47.0":
- version "1.47.0"
- resolved "https://registry.yarnpkg.com/@sidneys/logger/-/logger-1.47.0.tgz#b5a89961d8d550b14576b2b33f1ba025b8066f42"
- integrity sha512-vzrV8dIG2zV7LlubB4EQ6VW4VEoNmwr7J/jBz4LXL3MCYDHhmmus9hEpehjYL0ANMv5T/4/wlU4J1teC6rURxA==
+"@sidneys/logger@^1.50.0":
+ version "1.50.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/logger/-/logger-1.50.0.tgz#d95728bed41bbb278e635ed91b6b1b67c076c714"
+ integrity sha512-vKUkPQ1CO/m/ie95hRazNxyUu3IbpBGO4ES3keEXm5iXeMpbA1MYkTSTTu/xen99iydkn/lFnvs0F1JuTNXY+w==
dependencies:
- "@sidneys/is-env" "^1.42.0"
+ "@sidneys/is-env" "^1.45.0"
appdirectory "^0.1.0"
chalk "^2.4.2"
fs-extra "^7.0.1"
@@ -429,29 +432,29 @@
read-pkg-up "^4.0.0"
root-path "^0.2.1"
-"@sidneys/platform-tools@^1.47.0":
- version "1.47.0"
- resolved "https://registry.yarnpkg.com/@sidneys/platform-tools/-/platform-tools-1.47.0.tgz#9da8d4dd1822a3023f91796343e50ccbca1c6ecb"
- integrity sha512-AOG0LQqyEwwReUMWYv3eH3MY5gaHhUfwtDGvdOx4fQUjBg52hA3UPbhR4CTUqCuTV7SxRfRQ5LeSLgeHX0qU3A==
+"@sidneys/platform-tools@^1.51.0":
+ version "1.51.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/platform-tools/-/platform-tools-1.51.0.tgz#7d892f3a078b1bc2123f785af3e4ea14434a3bbb"
+ integrity sha512-G3UvzcNvGn5i2e4ntK+Hc0zh1EO5+2bcNXQDB4bM5PCvr5je0ds4Yd79DsubYj7sSydUBdbz2rA5KuZncWQOCA==
dependencies:
lodash "^4.17.11"
-"@sidneys/releasenotes@^1.39.0":
- version "1.39.0"
- resolved "https://registry.yarnpkg.com/@sidneys/releasenotes/-/releasenotes-1.39.0.tgz#8e182321e6e8cb99fdc3d1b4c4f7622d6fa3b4b6"
- integrity sha512-NJuFa3uvJZvuZxV3uo/9qwoWqlPJESUsXgeKpBcvf0x6+x4GQruCa32QBQ5db4ne25U4n2YSmGQTqdhjFBImHw==
+"@sidneys/releasenotes@^1.42.0":
+ version "1.42.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/releasenotes/-/releasenotes-1.42.0.tgz#0e73ff24d6251362401d988fb5e837505a2c62e2"
+ integrity sha512-a33DmZoBOYBQ0+iIEdnGBhG3U/CCELzpMpguOIPWcfPIsgNg9U/tk+AvuvI5fX6GF+UGnnMCwQBW5f5kmlqMvQ==
dependencies:
- "@sidneys/logger" "^1.47.0"
+ "@sidneys/logger" "^1.50.0"
app-root-path "^2.1.0"
fs-extra "^7.0.1"
json2md "^1.6.3"
lodash "^4.17.11"
remove-markdown "^0.3.0"
-"@sidneys/required-count@^1.50.0":
- version "1.50.0"
- resolved "https://registry.yarnpkg.com/@sidneys/required-count/-/required-count-1.50.0.tgz#4e13716181be0cf58e799d54286262e54089de20"
- integrity sha512-voYT75xIAYlYdJitWfN1krodO0MYfR4YxFQf1b6bwlOAew+OvriUaKuuNs5IvHCUwZSf1zTp2ia3KAB1O6Fr6Q==
+"@sidneys/required-count@^1.54.0":
+ version "1.54.0"
+ resolved "https://registry.yarnpkg.com/@sidneys/required-count/-/required-count-1.54.0.tgz#d1371ebf12a8631f0ea231fc51c7412c0a56a566"
+ integrity sha512-Q+4gb3bCv6Qg6/MNyLY5/lH4TS8XTblclIxoFECM4q+34tkUMZd1TExUMXYKHd5RfdsA8KsCbEQH9XWASP809Q==
"@sindresorhus/is@^0.7.0":
version "0.7.0"
@@ -535,6 +538,11 @@ ansi-align@^2.0.0:
dependencies:
string-width "^2.0.0"
+ansi-colors@3.2.3:
+ version "3.2.3"
+ resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.3.tgz#57d35b8686e851e2cc04c403f1c00203976a1813"
+ integrity sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==
+
ansi-escapes@^3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b"
@@ -1437,7 +1445,7 @@ debug@3.1.0:
dependencies:
ms "2.0.0"
-debug@^3.0.0:
+debug@3.2.6, debug@^3.0.0:
version "3.2.6"
resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
@@ -1507,6 +1515,13 @@ deep-is@~0.1.3:
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
+define-properties@^1.1.2:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
+ integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
+ dependencies:
+ object-keys "^1.0.12"
+
define-property@^0.2.5:
version "0.2.5"
resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116"
@@ -1590,10 +1605,10 @@ dmg-builder@6.5.4:
parse-color "^1.0.0"
sanitize-filename "^1.6.1"
-docdash@^1.0.2:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/docdash/-/docdash-1.0.2.tgz#0449a8f6bb247f563020b78a5485dea95ae2e094"
- integrity sha512-IEM57bWPLtVXpUeCKbiGvHsHtW9O9ZiiBPfeQDAZ7JdQiAF3aNWQoJ3e/+uJ63lHO009yn0tbJjtKpXJ2AURCQ==
+docdash@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/docdash/-/docdash-1.0.3.tgz#1ca4d37940275f05f926c1326cde36d88b9f3fbc"
+ integrity sha512-gPepWBPJSWK70PRqOtxLvZ2FLJlw49DZASs73yqmM7uM45WEygQJmHPBrrQ9eLeEkgPKUzDv+sr2SHgQS1OQ0g==
doctrine@^3.0.0:
version "3.0.0"
@@ -1787,6 +1802,27 @@ error-ex@^1.2.0, error-ex@^1.3.1:
dependencies:
is-arrayish "^0.2.1"
+es-abstract@^1.5.1:
+ version "1.13.0"
+ resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9"
+ integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==
+ dependencies:
+ es-to-primitive "^1.2.0"
+ function-bind "^1.1.1"
+ has "^1.0.3"
+ is-callable "^1.1.4"
+ is-regex "^1.0.4"
+ object-keys "^1.0.12"
+
+es-to-primitive@^1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377"
+ integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==
+ dependencies:
+ is-callable "^1.1.4"
+ is-date-object "^1.0.1"
+ is-symbol "^1.0.2"
+
es6-promise@^3.0.2:
version "3.3.1"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613"
@@ -1820,10 +1856,10 @@ eslint-visitor-keys@^1.0.0:
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d"
integrity sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==
-eslint@^5.14.0:
- version "5.14.0"
- resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.14.0.tgz#380739df2489dd846baea008638b036c1e987974"
- integrity sha512-jrOhiYyENRrRnWlMYANlGZTqb89r2FuRT+615AabBoajhNjeh9ywDNlh2LU9vTqf0WYN+L3xdXuIi7xuj/tK9w==
+eslint@^5.14.1:
+ version "5.14.1"
+ resolved "https://registry.yarnpkg.com/eslint/-/eslint-5.14.1.tgz#490a28906be313685c55ccd43a39e8d22efc04ba"
+ integrity sha512-CyUMbmsjxedx8B0mr79mNOqetvkbij/zrXnFeK2zc3pGRn3/tibjiNAv/3UxFEyfMDjh+ZqTrJrEGBFiGfD5Og==
dependencies:
"@babel/code-frame" "^7.0.0"
ajv "^6.9.1"
@@ -2097,10 +2133,10 @@ file-type@^10.7.0:
resolved "https://registry.yarnpkg.com/file-type/-/file-type-10.7.0.tgz#b6a9bf24f1d14ba514ab9087c7864d4da4a7ce76"
integrity sha512-AbaGtdWYYRaVrv2MwL/65myuRJ9j3e79e7etJ79US18QHuVlzJBcQHUH+HxDUoLtbyWRTUfLzLkGXX3pP9kfZg==
-file-type@^10.7.1:
- version "10.7.1"
- resolved "https://registry.yarnpkg.com/file-type/-/file-type-10.7.1.tgz#bcfdd618fddfa7f7e5fc504e08b62cfec7bda8f2"
- integrity sha512-kUc4EE9q3MH6kx70KumPOvXLZLEJZzY9phEVg/bKWyGZ+OA9KoKZzFR4HS0yDmNv31sJkdf4hbTERIfplF9OxQ==
+file-type@^10.8.0:
+ version "10.8.0"
+ resolved "https://registry.yarnpkg.com/file-type/-/file-type-10.8.0.tgz#676dfd43fdb75d8ccdba1cff53351b71190c25ff"
+ integrity sha512-287YScp3cpRWzhM+/E+A85O4FJi4dHus0eA6eBUzkRc08d/JAwqeczU/nwLstRuzzq/S7TqvQg9mhv7xVsdINQ==
file-type@^3.1.0:
version "3.9.0"
@@ -2161,7 +2197,7 @@ find-up@^3.0.0:
dependencies:
locate-path "^3.0.0"
-findup-sync@^2.0.0:
+findup-sync@2.0.0, findup-sync@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-2.0.0.tgz#9326b1488c22d1a6088650a86901b2d9a90a2cbc"
integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=
@@ -2192,6 +2228,13 @@ flat-cache@^2.0.1:
rimraf "2.6.3"
write "1.0.3"
+flat@^4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/flat/-/flat-4.1.0.tgz#090bec8b05e39cba309747f1d588f04dbaf98db2"
+ integrity sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==
+ dependencies:
+ is-buffer "~2.0.3"
+
flatted@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.0.tgz#55122b6536ea496b4b44893ee2608141d10d9916"
@@ -2287,6 +2330,11 @@ fs.realpath@^1.0.0:
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
+function-bind@^1.1.1:
+ version "1.1.1"
+ resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
+ integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
+
functional-red-black-tree@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
@@ -2414,7 +2462,7 @@ glob@7.1.2:
once "^1.3.0"
path-is-absolute "^1.0.0"
-glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3:
+glob@7.1.3, glob@^7.0.3, glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3:
version "7.1.3"
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1"
integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==
@@ -2581,6 +2629,11 @@ has-symbol-support-x@^1.4.1:
resolved "https://registry.yarnpkg.com/has-symbol-support-x/-/has-symbol-support-x-1.4.2.tgz#1409f98bc00247da45da67cee0a36f282ff26455"
integrity sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==
+has-symbols@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
+ integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
+
has-to-string-tag-x@^1.2.0:
version "1.4.1"
resolved "https://registry.yarnpkg.com/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz#a045ab383d7b4b2012a00148ab0aa5f290044d4d"
@@ -2619,6 +2672,13 @@ has-values@^1.0.0:
is-number "^3.0.0"
kind-of "^4.0.0"
+has@^1.0.1, has@^1.0.3:
+ version "1.0.3"
+ resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
+ integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
+ dependencies:
+ function-bind "^1.1.1"
+
hasha@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/hasha/-/hasha-2.2.0.tgz#78d7cbfc1e6d66303fe79837365984517b2f6ee1"
@@ -2642,6 +2702,11 @@ he@1.1.1:
resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0=
+he@1.2.0:
+ version "1.2.0"
+ resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f"
+ integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==
+
hoek@2.x.x:
version "2.16.3"
resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed"
@@ -2659,6 +2724,11 @@ hosted-git-info@^2.1.4, hosted-git-info@^2.7.1:
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
integrity sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==
+howler@^2.1.1:
+ version "2.1.1"
+ resolved "https://registry.yarnpkg.com/howler/-/howler-2.1.1.tgz#b8ae44b83f4b8a5b5ef354030ed0927314d8a996"
+ integrity sha512-9nwyDCGxhAGMmNXDfMLv0M/uS/WUg2//jG6t96D8DqbbsVZgXQzsP/ZMItbWO/Fqg7Gg69kOv3xVSDzJdd7aqA==
+
http-cache-semantics@3.8.1:
version "3.8.1"
resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2"
@@ -2877,6 +2947,11 @@ is-buffer@^1.1.5:
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
+is-buffer@~2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.3.tgz#4ecf3fcf749cbd1e472689e109ac66261a25e725"
+ integrity sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==
+
is-builtin-module@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe"
@@ -2884,7 +2959,7 @@ is-builtin-module@^1.0.0:
dependencies:
builtin-modules "^1.0.0"
-is-callable@^1.1.3:
+is-callable@^1.1.3, is-callable@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
@@ -2917,6 +2992,11 @@ is-data-descriptor@^1.0.0:
dependencies:
kind-of "^6.0.0"
+is-date-object@^1.0.1:
+ version "1.0.1"
+ resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
+ integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
+
is-descriptor@^0.1.0:
version "0.1.6"
resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca"
@@ -3082,6 +3162,13 @@ is-redirect@^1.0.0:
resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24"
integrity sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=
+is-regex@^1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
+ integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=
+ dependencies:
+ has "^1.0.1"
+
is-retry-allowed@^1.0.0, is-retry-allowed@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34"
@@ -3092,6 +3179,13 @@ is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0:
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
+is-symbol@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
+ integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
+ dependencies:
+ has-symbols "^1.0.0"
+
is-typedarray@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
@@ -3217,7 +3311,7 @@ js-tokens@^4.0.0:
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==
-js-yaml@^3.12.0:
+js-yaml@3.12.0, js-yaml@^3.12.0:
version "3.12.0"
resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.12.0.tgz#eaed656ec8344f10f527c6bfa1b6e2244de167d1"
integrity sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==
@@ -3321,7 +3415,7 @@ jsonfile@^4.0.0:
optionalDependencies:
graceful-fs "^4.1.6"
-jsonfile@^5.0.0:
+jsonfile@^5.0.0, jsonfile@latest:
version "5.0.0"
resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-5.0.0.tgz#e6b718f73da420d612823996fdf14a03f6ff6922"
integrity sha512-NQRZ5CRo74MhMMC3/3r5g2k4fjodJ/wh8MxjFbCViWKFjxrnudWSY5vomh+23ZaXzAS7J3fBZIR2dV6WbmfM0w==
@@ -3525,11 +3619,18 @@ lodash@^3.3.1:
resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
integrity sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=
-lodash@^4.13.1, lodash@^4.17.11:
+lodash@^4.13.1, lodash@^4.17.11, lodash@latest:
version "4.17.11"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==
+log-symbols@2.2.0:
+ version "2.2.0"
+ resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a"
+ integrity sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==
+ dependencies:
+ chalk "^2.0.1"
+
loud-rejection@^1.0.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f"
@@ -3756,6 +3857,35 @@ mocha@^5.2.0:
mkdirp "0.5.1"
supports-color "5.4.0"
+mocha@^6.0.1:
+ version "6.0.1"
+ resolved "https://registry.yarnpkg.com/mocha/-/mocha-6.0.1.tgz#c287da87913fa0edc4c44850ba8bc4fdbf20d3ea"
+ integrity sha512-tQzCxWqxSD6Oyg5r7Ptbev0yAMD8p+Vfh4snPFuiUsWqYj0eVYTDT2DkEY307FTj0WRlIWN9rWMMAUzRmijgVQ==
+ dependencies:
+ ansi-colors "3.2.3"
+ browser-stdout "1.3.1"
+ debug "3.2.6"
+ diff "3.5.0"
+ escape-string-regexp "1.0.5"
+ findup-sync "2.0.0"
+ glob "7.1.3"
+ growl "1.10.5"
+ he "1.2.0"
+ js-yaml "3.12.0"
+ log-symbols "2.2.0"
+ minimatch "3.0.4"
+ mkdirp "0.5.1"
+ ms "2.1.1"
+ node-environment-flags "1.0.4"
+ object.assign "4.1.0"
+ strip-json-comments "2.0.1"
+ supports-color "6.0.0"
+ which "1.3.1"
+ wide-align "1.1.3"
+ yargs "12.0.5"
+ yargs-parser "11.1.1"
+ yargs-unparser "1.5.0"
+
moment-duration-format@^2.2.2:
version "2.2.2"
resolved "https://registry.yarnpkg.com/moment-duration-format/-/moment-duration-format-2.2.2.tgz#b957612de26016c9ad9eb6087c054573e5127779"
@@ -3771,7 +3901,7 @@ ms@2.0.0:
resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
-ms@^2.1.1:
+ms@2.1.1, ms@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
@@ -3837,6 +3967,13 @@ nice-try@^1.0.4:
resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366"
integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==
+node-environment-flags@1.0.4:
+ version "1.0.4"
+ resolved "https://registry.yarnpkg.com/node-environment-flags/-/node-environment-flags-1.0.4.tgz#0b784a6551426bfc16d3b2208424dcbc2b2ff038"
+ integrity sha512-M9rwCnWVLW7PX+NUWe3ejEdiLYinRpsEre9hMkU/6NS4h+EEulYaDH1gCEZ2gyXsmw+RXYDaV2JkkTNcsPDJ0Q==
+ dependencies:
+ object.getownpropertydescriptors "^2.0.3"
+
node-uuid@~1.4.0:
version "1.4.8"
resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.8.tgz#b040eb0923968afabf8d32fb1f17f1167fdab907"
@@ -3910,6 +4047,11 @@ object-copy@^0.1.0:
define-property "^0.2.5"
kind-of "^3.0.3"
+object-keys@^1.0.11, object-keys@^1.0.12:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.0.tgz#11bd22348dd2e096a045ab06f6c85bcc340fa032"
+ integrity sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg==
+
object-keys@~0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336"
@@ -3922,6 +4064,24 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
+object.assign@4.1.0:
+ version "4.1.0"
+ resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
+ integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
+ dependencies:
+ define-properties "^1.1.2"
+ function-bind "^1.1.1"
+ has-symbols "^1.0.0"
+ object-keys "^1.0.11"
+
+object.getownpropertydescriptors@^2.0.3:
+ version "2.0.3"
+ resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
+ integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=
+ dependencies:
+ define-properties "^1.1.2"
+ es-abstract "^1.5.1"
+
object.pick@^1.3.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747"
@@ -5149,7 +5309,7 @@ string-width@^1.0.1, string-width@^1.0.2:
is-fullwidth-code-point "^1.0.0"
strip-ansi "^3.0.0"
-string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
+"string-width@^1.0.2 || 2", string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e"
integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==
@@ -5235,7 +5395,7 @@ strip-indent@^1.0.1:
dependencies:
get-stdin "^4.0.1"
-strip-json-comments@^2.0.1, strip-json-comments@~2.0.1:
+strip-json-comments@2.0.1, strip-json-comments@^2.0.1, strip-json-comments@~2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a"
integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo=
@@ -5254,6 +5414,13 @@ supports-color@5.4.0:
dependencies:
has-flag "^3.0.0"
+supports-color@6.0.0:
+ version "6.0.0"
+ resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-6.0.0.tgz#76cfe742cf1f41bb9b1c29ad03068c05b4c0e40a"
+ integrity sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==
+ dependencies:
+ has-flag "^3.0.0"
+
supports-color@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
@@ -5664,13 +5831,20 @@ which-module@^2.0.0:
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=
-which@^1.2.10, which@^1.2.14, which@^1.2.8, which@^1.2.9:
+which@1.3.1, which@^1.2.10, which@^1.2.14, which@^1.2.8, which@^1.2.9:
version "1.3.1"
resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a"
integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==
dependencies:
isexe "^2.0.0"
+wide-align@1.1.3:
+ version "1.1.3"
+ resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.3.tgz#ae074e6bdc0c14a431e804e624549c633b000457"
+ integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==
+ dependencies:
+ string-width "^1.0.2 || 2"
+
widest-line@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc"
@@ -5792,7 +5966,7 @@ yallist@^2.1.2:
resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52"
integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=
-yargs-parser@^11.1.1:
+yargs-parser@11.1.1, yargs-parser@^11.1.1:
version "11.1.1"
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-11.1.1.tgz#879a0865973bca9f6bab5cbdf3b1c67ec7d3bcf4"
integrity sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==
@@ -5808,7 +5982,16 @@ yargs-parser@^3.2.0:
camelcase "^3.0.0"
lodash.assign "^4.1.0"
-yargs@^12.0.5:
+yargs-unparser@1.5.0:
+ version "1.5.0"
+ resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-1.5.0.tgz#f2bb2a7e83cbc87bb95c8e572828a06c9add6e0d"
+ integrity sha512-HK25qidFTCVuj/D1VfNiEndpLIeJN78aqgR23nL3y4N0U/91cOAzqfHlF8n2BvoNDcZmJKin3ddNSvOxSr8flw==
+ dependencies:
+ flat "^4.1.0"
+ lodash "^4.17.11"
+ yargs "^12.0.5"
+
+yargs@12.0.5, yargs@^12.0.5:
version "12.0.5"
resolved "https://registry.yarnpkg.com/yargs/-/yargs-12.0.5.tgz#05f5997b609647b64f66b81e3b4b10a368e7ad13"
integrity sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==