diff --git a/packages/component-aws-s3/.gitignore b/packages/component-aws-s3/.gitignore deleted file mode 100644 index 3614a810088d89d9ccaa28d82401545634874a18..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -_build/ -api/ -logs/ -node_modules/ -uploads/ -.env.* -.env -config/local*.* \ No newline at end of file diff --git a/packages/component-aws-s3/README.md b/packages/component-aws-s3/README.md deleted file mode 100644 index 94f89caed032ad7806d7c9f9e3a9db0b86fc654e..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/README.md +++ /dev/null @@ -1,86 +0,0 @@ -# AWS S3 File Upload - -In order to use `component-xpub-aws-s3` you first need to have a `.env` file containing AWS data in the root folder of the starting point of your applications. - -The `.env` file should look like this: -```bash -AWS_ACCESS_KEY = exampleKey -AWS_SECRET_KEY = exampleKey/sads/21 -AWS_REGION = region-name -AWS_BUCKET = bucket-name -``` - -Then, as soon as possible in your app you should add the `dotenv` package: -```js -require('dotenv').config() -``` - -# `component-xpub-aws-s3` API -A list of endpoints that help you upload, download and delete S3 files. - -## Upload a file [POST] -#### Request -`POST /api/file` -#### Request body -``` -Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryWfPNVh4wuWBlyEyQ - -------WebKitFormBoundaryWfPNVh4wuWBlyEyQ -Content-Disposition: form-data; name="fileType" - -supplementary -------WebKitFormBoundaryWfPNVh4wuWBlyEyQ -Content-Disposition: form-data; name="fragmentId" - -545 -------WebKitFormBoundaryWfPNVh4wuWBlyEyQ -Content-Disposition: form-data; name="file"; filename="attachment.txt" -Content-Type: text/plain - -[file content goes there] -------WebKitFormBoundaryWfPNVh4wuWBlyEyQ -``` -#### Response -```json -{ - "id": "fragment-id/file-id", - "name": "Document Name.doc", - "size": 452097 -} -``` - -## Retrieve file signed URL [GET] -This endpoint allows you to retrieve a file's signed URL that can be used to download the file. -#### Request -`GET /api/file/{fileId}` - -| URI Parameter | Requiered | Requirements | Description | -| -------- | -------- | -------- | -------- | -| fileId | Yes | String | The ID of the file | - -#### Response -```json -HTTP/1.1 200 -{ - "signedUrl": "aws-url" -} -``` - -## Delete file [DELETE] -#### Request -`DELETE /api/file/{fileId}` - -| URI Parameter | Requiered | Requirements | Description | -| -------- | -------- | -------- | -------- | -| fileId | Yes | String | The ID of the file | - -#### Response -```json -HTTP/1.1 204 -``` ---- - - - - - diff --git a/packages/component-aws-s3/config/default.js b/packages/component-aws-s3/config/default.js deleted file mode 100644 index a2ddb5d58b13713de19c40c31dacc7fd1ebcf3e5..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/config/default.js +++ /dev/null @@ -1,7 +0,0 @@ -const path = require('path') - -module.exports = { - 'pubsweet-component-aws-s3': { - validations: path.resolve(__dirname, './upload-validations-test'), - }, -} diff --git a/packages/component-aws-s3/config/upload-validations-test.js b/packages/component-aws-s3/config/upload-validations-test.js deleted file mode 100644 index 23fa37d7d5a7b0403731429eb910f5f402799000..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/config/upload-validations-test.js +++ /dev/null @@ -1,19 +0,0 @@ -const Joi = require('joi') - -module.exports = { - manuscripts: Joi.any() - .valid([ - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - 'application/pdf', - 'application/msword', - ]) - .error(new Error('Only Word documents and PDFs are allowed')), - supplementary: Joi.any(), - coverLetter: Joi.any() - .valid([ - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - 'application/pdf', - 'application/msword', - ]) - .error(new Error('Only Word documents and PDFs are allowed')), -} diff --git a/packages/component-aws-s3/index.js b/packages/component-aws-s3/index.js deleted file mode 100644 index 140b65ac0183438e989b7e7f552b3498baa32820..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/index.js +++ /dev/null @@ -1,5 +0,0 @@ -require('dotenv').config() - -module.exports = { - backend: () => app => require('./src/FileBackend')(app), -} diff --git a/packages/component-aws-s3/package.json b/packages/component-aws-s3/package.json deleted file mode 100644 index 2d3692c09378a039531e3cf23be80d094f3a77ae..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/package.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "pubsweet-components-aws-s3", - "version": "0.0.1", - "description": "xpub aws s3 configured for faraday", - "license": "MIT", - "files": [ - "src" - ], - "scripts": { - "test": "jest" - }, - "repository": { - "type": "git", - "url": "https://gitlab.coko.foundation/xpub/xpub" - }, - "dependencies": { - "aws-sdk": "^2.185.0", - "body-parser": "^1.17.2", - "multer": "^1.3.0", - "multer-s3": "^2.7.0", - "node-mocks-http": "^1.6.6", - "nodemailer": "^4.4.2" - }, - "peerDependencies": { - "@pubsweet/logger": "^0.0.1", - "pubsweet": "^1.1.1", - "pubsweet-client": "^1.1.1", - "pubsweet-server": "^1.0.1" - }, - "devDependencies": { - "jest": "^22.1.1", - "supertest": "^3.0.0" - } -} diff --git a/packages/component-aws-s3/src/FileBackend.js b/packages/component-aws-s3/src/FileBackend.js deleted file mode 100644 index 4fb30e1916158653367317a3806001e1752779a7..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/src/FileBackend.js +++ /dev/null @@ -1,61 +0,0 @@ -const AWS = require('aws-sdk') -const logger = require('@pubsweet/logger') -const config = require('config') -const _ = require('lodash') - -const s3Config = _.get(config, 'pubsweet-component-aws-s3') - -const FileBackend = app => { - const authBearer = app.locals.passport.authenticate('bearer', { - session: false, - }) - AWS.config.update({ - secretAccessKey: s3Config.secretAccessKey, - accessKeyId: s3Config.accessKeyId, - region: s3Config.region, - }) - const s3 = new AWS.S3() - const upload = require('./middeware/upload').setupMulter(s3) - - app.post( - '/api/file', - authBearer, - upload.single('file'), - require('./routeHandlers/postFile'), - ) - app.get('/api/file/:fragmentId/:fileId', authBearer, async (req, res) => { - const params = { - Bucket: s3Config.bucket, - Key: `${req.params.fragmentId}/${req.params.fileId}`, - } - - s3.getSignedUrl('getObject', params, (err, data) => { - if (err) { - res.status(err.statusCode).json({ error: err.message }) - logger.error(err.message) - return - } - - res.status(200).json({ - signedUrl: data, - }) - }) - }) - app.delete('/api/file/:fragmentId/:fileId', authBearer, async (req, res) => { - const params = { - Bucket: s3Config.bucket, - Key: `${req.params.fragmentId}/${req.params.fileId}`, - } - s3.deleteObject(params, (err, data) => { - if (err) { - res.status(err.statusCode).json({ error: err.message }) - logger.error(err.message) - return - } - - res.status(204).json() - }) - }) -} - -module.exports = FileBackend diff --git a/packages/component-aws-s3/src/FileBackend.test.js b/packages/component-aws-s3/src/FileBackend.test.js deleted file mode 100644 index 250e90381ab533fbb563a82784f3b10f063109e6..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/src/FileBackend.test.js +++ /dev/null @@ -1,89 +0,0 @@ -process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' -process.env.SUPPRESS_NO_CONFIG_WARNING = true - -const httpMocks = require('node-mocks-http') - -describe('ValidateFile for multer fileFilter', () => { - it('should return TRUE when fileType is supplementary', () => { - const validateFile = require('./middeware/upload').validateFile( - ...buildValidateFileParams('supplementary', 'image/png'), - ) - expect(validateFile).toBe(true) - }) - it('should return TRUE when fileType is manuscripts or coverLetter and the file is either Word Doc or PDF', () => { - const randFileType = getRandValueFromArray(['manuscripts', 'coverLetter']) - const randMimeType = getRandValueFromArray([ - 'application/pdf', - 'application/msword', - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', - ]) - - const validateFile = require('./middeware/upload').validateFile( - ...buildValidateFileParams(randFileType, randMimeType), - ) - expect(validateFile).toBe(true) - }) - it('should return FALSE when fileType is manuscripts or coverLetter and the file is neither Word Doc or PDF', () => { - const randFileType = getRandValueFromArray(['manuscripts', 'coverLetter']) - const randMimeType = getRandValueFromArray([ - 'text/plain', - 'text/html', - 'image/jpeg', - 'image/png', - ]) - - const validateFile = require('./middeware/upload').validateFile( - ...buildValidateFileParams(randFileType, randMimeType), - ) - expect(validateFile).toBe(false) - }) -}) - -describe('Upload file route handler', () => { - it('should return success when the file passed validation', async () => { - const file = { - key: '123abc', - originalname: 'file.txt', - size: 128, - } - const req = httpMocks.createRequest({ - file, - }) - const res = httpMocks.createResponse() - await require('./routeHandlers/postFile')(req, res) - expect(res.statusCode).toBe(200) - const data = JSON.parse(res._getData()) - expect(data.id).toEqual(file.key) - expect(data.name).toEqual(file.originalname) - expect(data.size).toEqual(file.size) - }) - it('should return an error when the file failed validation', async () => { - const req = httpMocks.createRequest({ - fileValidationError: 'Only Word documents and PDFs are allowed', - }) - const res = httpMocks.createResponse() - await require('./routeHandlers/postFile')(req, res) - expect(res.statusCode).toBe(400) - const data = JSON.parse(res._getData()) - expect(data.error).toEqual(req.fileValidationError) - }) -}) - -const getRandValueFromArray = arr => arr[Math.floor(Math.random() * arr.length)] - -const buildValidateFileParams = (fileType, mimetype) => { - const req = { - body: { - fileType, - }, - } - const file = { - mimetype, - } - const cb = (p1, p2) => { - if (p2 === true) return true - return false - } - - return [req, file, cb] -} diff --git a/packages/component-aws-s3/src/middeware/upload.js b/packages/component-aws-s3/src/middeware/upload.js deleted file mode 100644 index 29aa00bbccc9db9d4221a6dcc0d4b56ad6d5b42d..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/src/middeware/upload.js +++ /dev/null @@ -1,47 +0,0 @@ -const multer = require('multer') -const multerS3 = require('multer-s3') -const uuid = require('uuid') -const Joi = require('joi') -const _ = require('lodash') -const config = require('config') - -const s3Config = _.get(config, 'pubsweet-component-aws-s3') -const uploadValidations = require(s3Config.validations) - -const setupMulter = s3 => { - const upload = multer({ - storage: multerS3({ - s3, - bucket: s3Config.bucket, - contentType: (req, file, cb) => { - cb(null, file.mimetype) - }, - key: (req, file, cb) => { - const fileKey = `${req.body.fragmentId}/${uuid.v4()}` - cb(null, fileKey) - }, - }), - fileFilter: (req, file, cb) => validateFile(req, file, cb), - }) - - return upload -} - -const validateFile = (req, file, cb) => { - const { fileType } = req.body - const { mimetype } = file - - const valid = Joi.validate({ [fileType]: mimetype }, uploadValidations) - - if (valid.error) { - req.fileValidationError = valid.error.message - return cb(null, false) - } - - return cb(null, true) -} - -module.exports = { - setupMulter, - validateFile, -} diff --git a/packages/component-aws-s3/src/routeHandlers/postFile.js b/packages/component-aws-s3/src/routeHandlers/postFile.js deleted file mode 100644 index 499c380024682da64f7ab148278aa6e5213f27f4..0000000000000000000000000000000000000000 --- a/packages/component-aws-s3/src/routeHandlers/postFile.js +++ /dev/null @@ -1,15 +0,0 @@ -const logger = require('@pubsweet/logger') - -module.exports = async (req, res) => { - if (req.fileValidationError !== undefined) { - logger.error(req.fileValidationError) - return res.status(400).json({ error: req.fileValidationError }) - } - logger.debug(`${req.file.originalname} has been uploaded`) - - res.status(200).json({ - id: req.file.key, - name: req.file.originalname, - size: req.file.size, - }) -} diff --git a/packages/component-aws-ses/src/EmailBackend.js b/packages/component-aws-ses/src/EmailBackend.js index 3cef31414720ec8cb8caf745fd84f3df4d22fa5c..5c8682c9d4356ae6e24e0eea80b8985483bd20d4 100644 --- a/packages/component-aws-ses/src/EmailBackend.js +++ b/packages/component-aws-ses/src/EmailBackend.js @@ -1,25 +1,22 @@ const nodemailer = require('nodemailer') -const AWS = require('aws-sdk') const config = require('config') -const _ = require('lodash') const logger = require('@pubsweet/logger') +const AWS = require('aws-sdk') -const sesConfig = _.get(config, 'pubsweet-component-aws-ses') +const mailerConfig = config.get('mailer') module.exports = { sendEmail: (toEmail, subject, textBody, htmlBody) => { - AWS.config.update({ - secretAccessKey: sesConfig.secretAccessKey, - accessKeyId: sesConfig.accessKeyId, - region: sesConfig.region, - }) - const transporter = nodemailer.createTransport({ - SES: new AWS.SES(), + SES: new AWS.SES({ + secretAccessKey: process.env.AWS_SES_SECRET_KEY, + accessKeyId: process.env.AWS_SES_ACCESS_KEY, + region: process.env.AWS_SES_REGION, + }), }) transporter.sendMail( { - from: sesConfig.sender, + from: mailerConfig.from, to: toEmail, subject, text: textBody, diff --git a/packages/component-invite/config/test.js b/packages/component-invite/config/test.js new file mode 100644 index 0000000000000000000000000000000000000000..6da7762b05361ae72d6841628918d2864fa1e9f6 --- /dev/null +++ b/packages/component-invite/config/test.js @@ -0,0 +1,19 @@ +module.exports = { + mailer: { + from: 'test@example.com', + }, + 'invite-reset-password': { + url: + process.env.PUBSWEET_INVITE_PASSWORD_RESET_URL || + 'http://localhost:3000/invite', + }, + roles: { + global: ['admin', 'editorInChief', 'author'], + collection: ['handlingEditor', 'reviewer'], + inviteRights: { + admin: ['admin', 'editorInChief', 'author'], + editorInChief: ['handlingEditor'], + handlingEditor: ['reviewer'], + }, + }, +} diff --git a/packages/component-invite/package.json b/packages/component-invite/package.json index 8573adb64bd575f40bfa52aa71bfc01744852f11..2dccf4558f2289d8c7c2ac97c6e50d408a2dbe7f 100644 --- a/packages/component-invite/package.json +++ b/packages/component-invite/package.json @@ -6,12 +6,17 @@ "files": [ "src" ], + "scripts": { + "test": "jest" + }, "repository": { "type": "git", - "url": "https://gitlab.coko.foundation/xpub/xpub" + "url": "https://gitlab.coko.foundation/xpub/xpub", + "path": "component-invite" }, "dependencies": { - "body-parser": "^1.17.2" + "body-parser": "^1.17.2", + "chance": "^1.0.13" }, "peerDependencies": { "@pubsweet/logger": "^0.0.1", @@ -22,5 +27,17 @@ "devDependencies": { "jest": "^22.1.1", "supertest": "^3.0.0" + }, + "jest": { + "moduleNameMapper": { + "\\.s?css$": "identity-obj-proxy" + }, + "transformIgnorePatterns": [ + "/node_modules/(?!@?pubsweet)" + ], + "testPathIgnorePatterns": [ + "/node_modules", + "config/" + ] } } diff --git a/packages/component-invite/src/Invite.js b/packages/component-invite/src/Invite.js index b4309fc68d017f930ec15afc13f5e9941b5bc637..7e41bb5b719785d43a403d6920f09be67154a0c7 100644 --- a/packages/component-invite/src/Invite.js +++ b/packages/component-invite/src/Invite.js @@ -1,293 +1,21 @@ const bodyParser = require('body-parser') -const logger = require('@pubsweet/logger') -const uuid = require('uuid') -const crypto = require('crypto') -const mailService = require('pubsweet-component-mail-service') -const get = require('lodash/get') -const pick = require('lodash/pick') -const config = require('config') -const configRoles = config.get('roles') const Invite = app => { app.use(bodyParser.json()) const authBearer = app.locals.passport.authenticate('bearer', { session: false, }) - app.post('/api/users/invite/:collectionId?', authBearer, async (req, res) => { - const { email, role, firstName, lastName, affiliation, title } = req.body - if (!checkForUndefinedParams(email, role)) { - res.status(400).json({ error: 'Email and role are required' }) - logger.error('some parameters are missing') - return - } - - const hasInviteRight = existingRole => - configRoles.inviteRights[existingRole].includes(role) - const collectionId = get(req, 'params.collectionId') - const reqUser = await app.locals.models.User.find(req.user) - let collection - if (collectionId && reqUser.roles !== undefined) { - if (!configRoles.collection.includes(role)) { - res - .status(400) - .json({ error: `Role ${role} cannot be set on collections` }) - logger.error(`invitation has been attempted with invalid role: ${role}`) - return - } - - if (!reqUser.roles.some(hasInviteRight)) { - res.status(403).json({ - error: `${reqUser.roles} cannot invite a ${role}`, - }) - logger.error(`incorrect role when inviting a user`) - return - } - try { - collection = await app.locals.models.Collection.find(collectionId) - } catch (e) { - if (e.name === 'NotFoundError') { - res.status(404).json({ error: 'Collection not found' }) - logger.error(`invalid collection id when inviting a ${role}`) - return - } - - res.status(500).json({ error: 'Something went wrong' }) - logger.error(e) - return - } - } else if (reqUser.admin === true) { - reqUser.roles = [] - reqUser.roles.push('admin') // this should be moved in pubsweet server - } else { - res.status(403).json({ - error: `${reqUser.roles || - 'undefined roles'} cannot invite a ${role} without a collection`, - }) - logger.error(`request user does not have any defined roles`) - return - } - - if (!reqUser.roles.some(hasInviteRight)) { - res.status(403).json({ - error: `${reqUser.roles} cannot invite a ${role}`, - }) - logger.error(`incorrect role when inviting a ${role}`) - return - } - - try { - const user = await app.locals.models.User.findByEmail(email) - - if (user) { - res.status(400).json({ error: 'User already exists' }) - logger.error('admin tried to invite existing user') - return - } - } catch (e) { - if (e.name !== 'NotFoundError') { - res.status(500).json({ error: e.details[0].message }) - logger.error(e) - return - } - - const userBody = { - username: uuid.v4().slice(0, 8), - email, - password: uuid.v4(), - roles: [role], - passwordResetToken: crypto.randomBytes(32).toString('hex'), - isConfirmed: false, - firstName, - lastName, - affiliation, - title, - admin: role === 'admin', - } - let newUser = new app.locals.models.User(userBody) - newUser = await newUser.save() - - let emailType = 'invite-editor-in-chief' - if (collection) { - let permissions, group, name - switch (newUser.roles[0]) { - case 'handlingEditor': - emailType = 'invite-handling-editor' - permissions = 'editor' - group = 'editor' - name = 'Handling Editor' - break - case 'reviewer': - emailType = 'invite-reviewer' - permissions = 'reviewer' - group = 'reviewer' - name = 'Reviewer' - break - default: - break - } - - const teamBody = { - teamType: { - name: newUser.roles[0], - permissions, - }, - group, - name, - object: { - type: 'collection', - id: collection.id, - }, - members: [newUser.id], - } - const team = new app.locals.models.Team(teamBody) - await team.save() - } - - await mailService.setupEmail( - newUser.email, - emailType, - newUser.passwordResetToken, - ) - - res.status(200).json(newUser) - } - }) - app.get('/api/users/invite', async (req, res) => { - const { email, token } = req.query - if (!checkForUndefinedParams(email, token)) { - res.status(400).json({ error: 'missing required params' }) - return - } - - const validateResponse = await validateEmailAndToken( - email, - token, - app.locals.models.User, - ) - if (validateResponse.success === false) { - res - .status(validateResponse.status) - .json({ error: validateResponse.message }) - return - } - - const resBody = pick(validateResponse.user, [ - 'firstName', - 'lastName', - 'affiliation', - 'title', - ]) - - res.status(200).json(resBody) - }) + app.post( + '/api/users/invite/:collectionId?', + authBearer, + require('./routes/post')(app.locals.models), + ) + app.get('/api/users/invite', require('./routes/get')(app.locals.models)) app.post( '/api/users/invite/password/reset', bodyParser.json(), - async (req, res) => { - if (!checkForUndefinedParams(req.body)) { - res.status(400).json({ error: 'missing required params' }) - return - } - - const { password } = req.body - if (password.length < 7) { - res - .status(400) - .json({ error: 'password needs to be at least 7 characters long' }) - logger.error( - `the user added an invalid password length: ${password.length}`, - ) - return - } - - const updateFields = { - password, - firstName: req.body.firstName, - lastName: req.body.lastName, - affiliation: req.body.affiliation, - title: req.body.title, - isConfirmed: true, - } - - const validateResponse = await validateEmailAndToken( - req.body.email, - req.body.token, - app.locals.models.User, - ) - if (validateResponse.success === false) { - res - .status(validateResponse.status) - .json({ error: validateResponse.message }) - return - } - - if (validateResponse.user.isConfirmed) { - res.status(400).json({ error: 'User is already confirmed' }) - return - } - - let newUser = Object.assign( - validateResponse.user, - updateFields, - validateResponse.user, - ) - delete newUser.passwordResetToken - - newUser = await newUser.save() - res.status(200).json(newUser) - }, + require('./routes/reset')(app.locals.models), ) } -const checkForUndefinedParams = (...params) => { - if (params.includes(undefined)) { - return false - } - - return true -} - -const validateEmailAndToken = async (email, token, userModel) => { - try { - const user = await userModel.findByEmail(email) - if (user) { - if (token !== user.passwordResetToken) { - logger.error( - `invite pw reset tokens do not match: REQ ${token} vs. DB ${ - user.passwordResetToken - }`, - ) - return { - success: false, - status: 400, - message: 'invalid request', - } - } - return { success: true, user } - } - } catch (e) { - if (e.name === 'NotFoundError') { - logger.error('invite pw reset on non-existing user') - return { - success: false, - status: 404, - message: 'user not found', - } - } else if (e.name === 'ValidationError') { - logger.error('invite pw reset validation error') - return { - success: false, - status: 400, - message: e.details[0].message, - } - } - logger.error(e) - return { - success: false, - status: 500, - message: e.details[0].message, - } - } -} - module.exports = Invite diff --git a/packages/component-invite/src/helpers/helpers.js b/packages/component-invite/src/helpers/helpers.js new file mode 100644 index 0000000000000000000000000000000000000000..bf0077c7692b634c51ab168063b5b2f16e4ee3fa --- /dev/null +++ b/packages/component-invite/src/helpers/helpers.js @@ -0,0 +1,162 @@ +const logger = require('@pubsweet/logger') +const uuid = require('uuid') +const crypto = require('crypto') + +const checkForUndefinedParams = (...params) => { + if (params.includes(undefined)) { + return false + } + + return true +} + +const validateEmailAndToken = async (email, token, userModel) => { + try { + const user = await userModel.findByEmail(email) + if (user) { + if (token !== user.passwordResetToken) { + logger.error( + `invite pw reset tokens do not match: REQ ${token} vs. DB ${ + user.passwordResetToken + }`, + ) + return { + success: false, + status: 400, + message: 'invalid request', + } + } + return { success: true, user } + } + } catch (e) { + if (e.name === 'NotFoundError') { + logger.error('invite pw reset on non-existing user') + return { + success: false, + status: 404, + message: 'user not found', + } + } else if (e.name === 'ValidationError') { + logger.error('invite pw reset validation error') + return { + success: false, + status: 400, + message: e.details[0].message, + } + } + logger.error(e) + return { + success: false, + status: 500, + message: e.details[0].message, + } + } +} + +const hasInviteRight = (configRoles, userRoles, role) => { + const includesRole = existingRole => + configRoles.inviteRights[existingRole].includes(role) + if (!userRoles.some(includesRole)) { + logger.error(`incorrect role when inviting a user`) + + return { + success: false, + status: 403, + message: `${userRoles} cannot invite a ${role}`, + } + } + + return { + success: true, + } +} + +const handleNotFoundError = async (error, item) => { + const response = { + success: false, + status: 500, + message: 'Something went wrong', + } + if (error.name === 'NotFoundError') { + logger.error(`invalid ${item} id`) + response.status = 404 + response.message = `${item} not found` + return response + } + + logger.error(error) + return response +} + +const createNewTeam = async (collectionId, emailType, user, TeamModel) => { + let permissions, group, name + switch (user.roles[0]) { + case 'handlingEditor': + emailType = 'invite-handling-editor' + permissions = 'editor' + group = 'editor' + name = 'Handling Editor' + break + case 'reviewer': + emailType = 'invite-reviewer' + permissions = 'reviewer' + group = 'reviewer' + name = 'Reviewer' + break + default: + break + } + + const teamBody = { + teamType: { + name: user.roles[0], + permissions, + }, + group, + name, + object: { + type: 'collection', + id: collectionId, + }, + members: [user.id], + } + const team = new TeamModel(teamBody) + await team.save() + return emailType +} + +const createNewUser = async ( + email, + role, + firstName, + lastName, + affiliation, + title, + UserModel, +) => { + const userBody = { + username: uuid.v4().slice(0, 8), + email, + password: uuid.v4(), + roles: [role], + passwordResetToken: crypto.randomBytes(32).toString('hex'), + isConfirmed: false, + firstName, + lastName, + affiliation, + title, + admin: role === 'admin', + } + let newUser = new UserModel(userBody) + newUser = await newUser.save() + return newUser +} + +module.exports = { + checkForUndefinedParams, + validateEmailAndToken, + hasInviteRight, + handleNotFoundError, + createNewTeam, + createNewUser, +} diff --git a/packages/component-invite/src/routes/get.js b/packages/component-invite/src/routes/get.js new file mode 100644 index 0000000000000000000000000000000000000000..fd6fa2e3150f8126f3b2fe6833c6dac889122659 --- /dev/null +++ b/packages/component-invite/src/routes/get.js @@ -0,0 +1,31 @@ +const helpers = require('../helpers/helpers') +const pick = require('lodash/pick') + +module.exports = models => async (req, res) => { + const { email, token } = req.query + if (!helpers.checkForUndefinedParams(email, token)) { + res.status(400).json({ error: 'missing required params' }) + return + } + + const validateResponse = await helpers.validateEmailAndToken( + email, + token, + models.User, + ) + if (validateResponse.success === false) { + res + .status(validateResponse.status) + .json({ error: validateResponse.message }) + return + } + + const resBody = pick(validateResponse.user, [ + 'firstName', + 'lastName', + 'affiliation', + 'title', + ]) + + res.status(200).json(resBody) +} diff --git a/packages/component-invite/src/routes/post.js b/packages/component-invite/src/routes/post.js new file mode 100644 index 0000000000000000000000000000000000000000..52d366519669c91b566d5f8da5f96eb42c8817a2 --- /dev/null +++ b/packages/component-invite/src/routes/post.js @@ -0,0 +1,115 @@ +const logger = require('@pubsweet/logger') +const mailService = require('pubsweet-component-mail-service') +const get = require('lodash/get') +const config = require('config') +const helpers = require('../helpers/helpers') + +const configRoles = config.get('roles') + +module.exports = models => async (req, res) => { + const { email, role, firstName, lastName, affiliation, title } = req.body + + if (!helpers.checkForUndefinedParams(email, role)) { + res.status(400).json({ error: 'Email and role are required' }) + logger.error('some parameters are missing') + return + } + + const collectionId = get(req, 'params.collectionId') + const reqUser = await models.User.find(req.user) + let collection + + if (reqUser.admin && collectionId) { + res.status(403).json({ + error: `admin cannot invite an ${role} to a collection`, + }) + logger.error(`admin tried to invite a ${role} to a collection`) + return + } else if (reqUser.admin) { + reqUser.roles = reqUser.roles || ['admin'] + const inviteRight = helpers.hasInviteRight(configRoles, reqUser.roles, role) + if (!inviteRight.success) { + res.status(inviteRight.status).json({ + error: inviteRight.message, + }) + logger.error(`incorrect role when inviting a user`) + return + } + } else if (collectionId) { + if (!configRoles.collection.includes(role)) { + res + .status(400) + .json({ error: `Role ${role} cannot be set on collections` }) + logger.error(`invitation has been attempted with invalid role: ${role}`) + return + } + + const inviteRight = helpers.hasInviteRight(configRoles, reqUser.roles, role) + if (!inviteRight.success) { + res.status(inviteRight.status).json({ + error: inviteRight.message, + }) + return + } + try { + collection = await models.Collection.find(collectionId) + } catch (e) { + const notFoundError = helpers.handleNotFoundError(e, 'collection') + res.status(notFoundError.status).json({ + error: notFoundError.message, + }) + return + } + } else { + res.status(403).json({ + error: `${reqUser.roles || + 'undefined roles'} cannot invite a ${role} without a collection`, + }) + logger.error(`request user does not have any defined roles`) + return + } + + try { + const user = await models.User.findByEmail(email) + + if (user) { + res.status(400).json({ error: 'User already exists' }) + logger.error('admin tried to invite existing user') + return + } + } catch (e) { + if (e.name !== 'NotFoundError') { + res.status(500).json({ error: e.details[0].message }) + logger.error(e) + return + } + + const newUser = await helpers.createNewUser( + email, + role, + firstName, + lastName, + affiliation, + title, + models.User, + ) + + let emailType = 'invite-editor-in-chief' + emailType = !collection + ? emailType + : await helpers.createNewTeam( + collection.id, + emailType, + newUser, + models.Team, + ) + + await mailService.setupEmail( + newUser.email, + emailType, + newUser.passwordResetToken, + ) + + res.status(200).json(newUser) + } +} diff --git a/packages/component-invite/src/routes/reset.js b/packages/component-invite/src/routes/reset.js new file mode 100644 index 0000000000000000000000000000000000000000..cb498f1eb3a9434be192112df5043efefd43dd20 --- /dev/null +++ b/packages/component-invite/src/routes/reset.js @@ -0,0 +1,56 @@ +const logger = require('@pubsweet/logger') +const helpers = require('../helpers/helpers') + +module.exports = models => async (req, res) => { + if (!helpers.checkForUndefinedParams(req.body)) { + res.status(400).json({ error: 'missing required params' }) + return + } + + const { password } = req.body + if (password.length < 7) { + res + .status(400) + .json({ error: 'password needs to be at least 7 characters long' }) + logger.error( + `the user added an invalid password length: ${password.length}`, + ) + return + } + + const updateFields = { + password, + firstName: req.body.firstName, + lastName: req.body.lastName, + affiliation: req.body.affiliation, + title: req.body.title, + isConfirmed: true, + } + + const validateResponse = await helpers.validateEmailAndToken( + req.body.email, + req.body.token, + models.User, + ) + if (validateResponse.success === false) { + res + .status(validateResponse.status) + .json({ error: validateResponse.message }) + return + } + + if (validateResponse.user.isConfirmed) { + res.status(400).json({ error: 'User is already confirmed' }) + return + } + + let newUser = Object.assign( + validateResponse.user, + updateFields, + validateResponse.user, + ) + delete newUser.passwordResetToken + + newUser = await newUser.save() + res.status(200).json(newUser) +} diff --git a/packages/component-invite/src/tests/fixtures/collections.js b/packages/component-invite/src/tests/fixtures/collections.js new file mode 100644 index 0000000000000000000000000000000000000000..959e3b413fe82696d18505c60a3e5caafa5a7947 --- /dev/null +++ b/packages/component-invite/src/tests/fixtures/collections.js @@ -0,0 +1,12 @@ +const users = require('./users') + +module.exports = { + standardCollection: { + id: '2c4fb766-a798-4c32-b857-c5d21a2ab331', + title: 'Standard Collection', + type: 'collection', + fragments: [], + owners: [users.admin.id], + save: jest.fn(), + }, +} diff --git a/packages/component-invite/src/tests/fixtures/fixtures.js b/packages/component-invite/src/tests/fixtures/fixtures.js new file mode 100644 index 0000000000000000000000000000000000000000..b0a926aa1427d8662addf9dd3e46c6a61147f915 --- /dev/null +++ b/packages/component-invite/src/tests/fixtures/fixtures.js @@ -0,0 +1,7 @@ +const users = require('./users') +const collections = require('./collections') + +module.exports = { + users, + collections, +} diff --git a/packages/component-invite/src/tests/fixtures/users.js b/packages/component-invite/src/tests/fixtures/users.js new file mode 100644 index 0000000000000000000000000000000000000000..6a13d1eb223024f9bb580b5c31e96b96c20c8028 --- /dev/null +++ b/packages/component-invite/src/tests/fixtures/users.js @@ -0,0 +1,10 @@ +module.exports = { + admin: { + type: 'user', + username: 'admin', + email: 'admin@example.com', + password: 'test', + admin: true, + id: 'admin123', + }, +} diff --git a/packages/component-invite/src/tests/mocks/User.js b/packages/component-invite/src/tests/mocks/User.js new file mode 100644 index 0000000000000000000000000000000000000000..9a7459fc5578d3aa1d5dcec8562fa8f17225b1eb --- /dev/null +++ b/packages/component-invite/src/tests/mocks/User.js @@ -0,0 +1,21 @@ +/* eslint-disable func-names-any */ + +function User(properties) { + this.type = 'user' + this.email = properties.email + this.username = properties.username + this.password = properties.password + this.roles = properties.roles + this.title = properties.title + this.affiliation = properties.affiliation + this.firstName = properties.firstName + this.lastName = properties.lastName + this.admin = properties.admin +} + +User.prototype.save = jest.fn(function saveUser() { + this.id = '111222' + return Promise.resolve(this) +}) + +module.exports = User diff --git a/packages/component-invite/src/tests/post.test.js b/packages/component-invite/src/tests/post.test.js new file mode 100644 index 0000000000000000000000000000000000000000..dc39ab175b4365b8363250792023d803b4c333ad --- /dev/null +++ b/packages/component-invite/src/tests/post.test.js @@ -0,0 +1,123 @@ +process.env.NODE_TLS_REJECT_UNAUTHORIZED = '0' +process.env.SUPPRESS_NO_CONFIG_WARNING = true + +const httpMocks = require('node-mocks-http') +const random = require('lodash/random') +const fixtures = require('./fixtures/fixtures') +const UserMock = require('./mocks/User') +const Chance = require('chance') + +jest.mock('pubsweet-component-mail-service', () => ({ setupEmail: jest.fn() })) +const chance = new Chance() +const globalRoles = ['editorInChief', 'author', 'admin'] +const manuscriptRoles = ['handlingEditor', 'reviewer'] +const buildModels = (collection, findUser, emailUser) => { + const models = { + User: {}, + Collection: { + find: jest.fn( + () => + collection instanceof Error + ? Promise.reject(collection) + : Promise.resolve(collection), + ), + }, + } + + UserMock.find = jest.fn( + () => + findUser instanceof Error + ? Promise.reject(findUser) + : Promise.resolve(findUser), + ) + UserMock.findByEmail = jest.fn( + () => + emailUser instanceof Error + ? Promise.reject(emailUser) + : Promise.resolve(emailUser), + ) + + models.User = UserMock + return models +} + +const body = { + email: chance.email(), + role: globalRoles[random(0, globalRoles.length - 1)], + firstName: chance.first(), + lastName: chance.last(), + title: 'professor', + affiliation: 'MIT', +} +body.admin = body.role === 'admin' + +const getNotFoundError = () => { + const error = new Error() + error.name = 'NotFoundError' + error.status = 404 + + return error +} +describe('Post invite route handler', () => { + it('should return success when the admin invites an Editor in Chief, Author or Admin', async () => { + const req = httpMocks.createRequest({ + body, + }) + req.user = fixtures.users.admin + const res = httpMocks.createResponse() + const error = getNotFoundError() + const models = buildModels(error, fixtures.users.admin, error) + await require('../routes/post')(models)(req, res) + + expect(res.statusCode).toBe(200) + const data = JSON.parse(res._getData()) + expect(data.roles[0]).toEqual(body.role) + expect(data.firstName).toEqual(body.firstName) + expect(data.email).toEqual(body.email) + expect(data.admin).toEqual(body.admin) + }) + it('should return an error when the admin invites an user on a collection', async () => { + const req = httpMocks.createRequest({ + body, + }) + req.user = fixtures.users.admin + req.params.collectionId = '123' + const res = httpMocks.createResponse() + const error = getNotFoundError() + const models = buildModels(error, fixtures.users.admin) + await require('../routes/post')(models)(req, res) + expect(res.statusCode).toBe(403) + const data = JSON.parse(res._getData()) + expect(data.error).toEqual( + `admin cannot invite an ${body.role} to a collection`, + ) + }) + it('should return an error when the admin invites a manuscript role', async () => { + body.role = manuscriptRoles[random(0, manuscriptRoles.length - 1)] + const req = httpMocks.createRequest({ + body, + }) + req.user = fixtures.users.admin + const res = httpMocks.createResponse() + const error = getNotFoundError() + const models = buildModels(error, fixtures.users.admin) + await require('../routes/post')(models)(req, res) + expect(res.statusCode).toBe(403) + const data = JSON.parse(res._getData()) + expect(data.error).toEqual(`admin cannot invite a ${body.role}`) + }) + it('should return an error params are missing', async () => { + delete body.email + const req = httpMocks.createRequest({ + body, + }) + req.user = fixtures.users.admin + const res = httpMocks.createResponse() + const error = getNotFoundError() + const models = buildModels(error, fixtures.users.admin) + await require('../routes/post')(models)(req, res) + expect(res.statusCode).toBe(400) + const data = JSON.parse(res._getData()) + expect(data.error).toEqual(`Email and role are required`) + }) +}) diff --git a/packages/xpub-faraday/config/components.json b/packages/xpub-faraday/config/components.json index 609da317e757cc371a1c3efe4d51b3cf79ebdd84..a6b66287113c39f421842f3d071e277c953150cb 100644 --- a/packages/xpub-faraday/config/components.json +++ b/packages/xpub-faraday/config/components.json @@ -1,12 +1,11 @@ [ "pubsweet-component-login", "pubsweet-component-signup", - "pubsweet-component-xpub-dashboard", "xpub-faraday-server", "pubsweet-component-ink-backend", "pubsweet-component-wizard", "pubsweet-component-modal", "pubsweet-components-faraday", - "pubsweet-components-aws-s3", + "@pubsweet/component-aws-s3", "pubsweet-component-invite" ] diff --git a/packages/xpub-faraday/config/default.js b/packages/xpub-faraday/config/default.js index 054318dba962df57aae30932e715b2f2bbae01f0..c78cdecc488485f1bf753ea57efbc6ce4dd2da05 100644 --- a/packages/xpub-faraday/config/default.js +++ b/packages/xpub-faraday/config/default.js @@ -1,7 +1,8 @@ +require('dotenv').config() + const path = require('path') const components = require('./components.json') const logger = require('winston') -require('dotenv').config() const environment = process.env.NODE_ENV || 'development' @@ -54,12 +55,12 @@ module.exports = { bucket: process.env.AWS_S3_BUCKET, validations: path.resolve(__dirname, 'upload-validations.js'), }, - 'pubsweet-component-aws-ses': { - secretAccessKey: process.env.AWS_SES_SECRET_KEY, - accessKeyId: process.env.AWS_SES_ACCESS_KEY, - region: process.env.AWS_SES_REGION, - sender: process.env.EMAIL_SENDER, - }, + // 'pubsweet-component-aws-ses': { + // secretAccessKey: process.env.AWS_SES_SECRET_KEY, + // accessKeyId: process.env.AWS_SES_ACCESS_KEY, + // region: process.env.AWS_SES_REGION, + // sender: process.env.EMAIL_SENDER, + // }, 'invite-reset-password': { url: process.env.PUBSWEET_INVITE_PASSWORD_RESET_URL || @@ -74,6 +75,9 @@ module.exports = { handlingEditor: ['reviewer'], }, }, + mailer: { + from: process.env.EMAIL_SENDER || 'test_sender@domain.com', + }, publicKeys: [ 'pubsweet-client', 'authsome', diff --git a/packages/xpub-faraday/package.json b/packages/xpub-faraday/package.json index fea858d354b3a2939c9dafae599efc2785b657c1..9e306a496ad153f449454a2d6e7177d4ccf64fe3 100644 --- a/packages/xpub-faraday/package.json +++ b/packages/xpub-faraday/package.json @@ -8,7 +8,9 @@ "url": "https://gitlab.coko.foundation/xpub/xpub" }, "dependencies": { + "aws-sdk": "^2.197.0", "@pubsweet/ui": "^2.0.0", + "@pubsweet/component-aws-s3": "^0.1.1", "babel-core": "^6.26.0", "config": "^1.26.2", "dotenv": "^5.0.0", @@ -18,6 +20,7 @@ "joi": "^10.0.6", "loadable-components": "^0.3.0", "moment": "^2.18.1", + "nodemailer-ses-transport": "^1.5.1", "prop-types": "^15.5.10", "pubsweet": "^1.1.1", "pubsweet-client": "^2.1.0", @@ -25,11 +28,7 @@ "pubsweet-component-ink-frontend": "^1.0.0", "pubsweet-component-login": "^1.0.1", "pubsweet-component-signup": "^1.0.0", - "pubsweet-component-xpub-dashboard": "^0.0.2", "pubsweet-component-xpub-manuscript": "^0.0.2", - "pubsweet-component-xpub-review": "^0.0.2", - "pubsweet-component-xpub-submit": "^0.0.2", - "pubsweet-components-aws-s3": "^0.0.1", "pubsweet-component-invite": "^0.0.1", "pubsweet-server": "^1.0.1", "react": "^16.2.0", diff --git a/yarn.lock b/yarn.lock index 2abbb34822d21a0cccbdc1db238f8f2b0a23cb9d..17a9872bc795a46e40d990c3e2a83bfadcf21904 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,91 +2,110 @@ # yarn lockfile v1 -"@babel/code-frame@7.0.0-beta.31": - version "7.0.0-beta.31" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.31.tgz#473d021ecc573a2cce1c07d5b509d5215f46ba35" +"@babel/code-frame@7.0.0-beta.40", "@babel/code-frame@^7.0.0-beta.35", "@babel/code-frame@^7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.40.tgz#37e2b0cf7c56026b4b21d3927cadf81adec32ac6" dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" + "@babel/highlight" "7.0.0-beta.40" -"@babel/code-frame@^7.0.0-beta.35": - version "7.0.0-beta.37" - resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0-beta.37.tgz#2da1dd3b1b57bfdea777ddc378df7cd12fe40171" +"@babel/generator@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.0.0-beta.40.tgz#ab61f9556f4f71dbd1138949c795bb9a21e302ea" dependencies: - chalk "^2.0.0" - esutils "^2.0.2" - js-tokens "^3.0.0" + "@babel/types" "7.0.0-beta.40" + jsesc "^2.5.1" + lodash "^4.2.0" + source-map "^0.5.0" + trim-right "^1.0.1" -"@babel/helper-function-name@7.0.0-beta.31": - version "7.0.0-beta.31" - resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.31.tgz#afe63ad799209989348b1109b44feb66aa245f57" +"@babel/helper-function-name@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.40.tgz#9d033341ab16517f40d43a73f2d81fc431ccd7b6" dependencies: - "@babel/helper-get-function-arity" "7.0.0-beta.31" - "@babel/template" "7.0.0-beta.31" - "@babel/traverse" "7.0.0-beta.31" - "@babel/types" "7.0.0-beta.31" + "@babel/helper-get-function-arity" "7.0.0-beta.40" + "@babel/template" "7.0.0-beta.40" + "@babel/types" "7.0.0-beta.40" -"@babel/helper-get-function-arity@7.0.0-beta.31": - version "7.0.0-beta.31" - resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.31.tgz#1176d79252741218e0aec872ada07efb2b37a493" +"@babel/helper-get-function-arity@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.40.tgz#ac0419cf067b0ec16453e1274f03878195791c6e" dependencies: - "@babel/types" "7.0.0-beta.31" + "@babel/types" "7.0.0-beta.40" -"@babel/template@7.0.0-beta.31": - version "7.0.0-beta.31" - resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.31.tgz#577bb29389f6c497c3e7d014617e7d6713f68bda" +"@babel/highlight@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.0.0-beta.40.tgz#b43d67d76bf46e1d10d227f68cddcd263786b255" dependencies: - "@babel/code-frame" "7.0.0-beta.31" - "@babel/types" "7.0.0-beta.31" - babylon "7.0.0-beta.31" + chalk "^2.0.0" + esutils "^2.0.2" + js-tokens "^3.0.0" + +"@babel/template@7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.0.0-beta.40.tgz#034988c6424eb5c3268fe6a608626de1f4410fc8" + dependencies: + "@babel/code-frame" "7.0.0-beta.40" + "@babel/types" "7.0.0-beta.40" + babylon "7.0.0-beta.40" lodash "^4.2.0" -"@babel/traverse@7.0.0-beta.31": - version "7.0.0-beta.31" - resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.31.tgz#db399499ad74aefda014f0c10321ab255134b1df" +"@babel/traverse@^7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.0.0-beta.40.tgz#d140e449b2e093ef9fe1a2eecc28421ffb4e521e" dependencies: - "@babel/code-frame" "7.0.0-beta.31" - "@babel/helper-function-name" "7.0.0-beta.31" - "@babel/types" "7.0.0-beta.31" - babylon "7.0.0-beta.31" + "@babel/code-frame" "7.0.0-beta.40" + "@babel/generator" "7.0.0-beta.40" + "@babel/helper-function-name" "7.0.0-beta.40" + "@babel/types" "7.0.0-beta.40" + babylon "7.0.0-beta.40" debug "^3.0.1" - globals "^10.0.0" + globals "^11.1.0" invariant "^2.2.0" lodash "^4.2.0" -"@babel/types@7.0.0-beta.31": - version "7.0.0-beta.31" - resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.31.tgz#42c9c86784f674c173fb21882ca9643334029de4" +"@babel/types@7.0.0-beta.40", "@babel/types@^7.0.0-beta.40": + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.0.0-beta.40.tgz#25c3d7aae14126abe05fcb098c65a66b6d6b8c14" dependencies: esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^2.0.0" -"@pubsweet/db-manager@^0.0.7": - version "0.0.7" - resolved "https://registry.yarnpkg.com/@pubsweet/db-manager/-/db-manager-0.0.7.tgz#5107eb0dc1291771b873288f0f42db08f237dec2" +"@pubsweet/component-aws-s3@^0.1.1": + version "0.1.1" + resolved "https://registry.yarnpkg.com/@pubsweet/component-aws-s3/-/component-aws-s3-0.1.1.tgz#2faa379c1b8c12dbc6573a5627b09f536a484cc3" + dependencies: + aws-sdk "^2.185.0" + body-parser "^1.17.2" + multer "^1.3.0" + multer-s3 "^2.7.0" + node-mocks-http "^1.6.6" + nodemailer "^4.4.2" + +"@pubsweet/db-manager@^0.0.17": + version "0.0.17" + resolved "https://registry.yarnpkg.com/@pubsweet/db-manager/-/db-manager-0.0.17.tgz#f4fc6d17847f020fb4fa8a4e3ea5885c1181c51b" dependencies: - "@pubsweet/logger" "0.0.1" + "@pubsweet/logger" "^0.2.2" fs-extra "^4.0.2" isomorphic-fetch "^2.2.1" - joi "^11.0.2" + joi "^13.1.0" pouchdb "^6.3.4" - pubsweet-server "^1.0.0-beta.2" + pubsweet-server "^1.1.1" -"@pubsweet/logger@0.0.1", "@pubsweet/logger@^0.0.1": +"@pubsweet/logger@^0.0.1": version "0.0.1" resolved "https://registry.yarnpkg.com/@pubsweet/logger/-/logger-0.0.1.tgz#ec0c15f04e0c64232c29173848ffe6da8190c9c2" dependencies: config "^1.26.2" joi "^10.6.0" -"@pubsweet/logger@^0.0.2": - version "0.0.2" - resolved "https://registry.yarnpkg.com/@pubsweet/logger/-/logger-0.0.2.tgz#a3ea55f9e5efb404fd68a0271f1480672232362a" +"@pubsweet/logger@^0.2.2": + version "0.2.2" + resolved "https://registry.yarnpkg.com/@pubsweet/logger/-/logger-0.2.2.tgz#ef5680c766226d4b25c5915859ea259b8c688db3" dependencies: config "^1.26.2" - joi "^10.6.0" + joi "^13.1.0" lodash "^4.17.4" "@pubsweet/styleguide@^1.0.0": @@ -134,8 +153,8 @@ redux-form "^7.0.3" "@pubsweet/ui@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@pubsweet/ui/-/ui-2.0.0.tgz#cce3bf036bf71b48f2f2808391fcbc2cb08d8e3e" + version "2.1.0" + resolved "https://registry.yarnpkg.com/@pubsweet/ui/-/ui-2.1.0.tgz#67c057ceddb3fb95d2748a52ba571b9750694b2d" dependencies: babel-jest "^21.2.0" classnames "^2.2.5" @@ -156,8 +175,12 @@ styled-components "^2.4.0" "@types/node@*": - version "8.5.2" - resolved "https://registry.yarnpkg.com/@types/node/-/node-8.5.2.tgz#83b8103fa9a2c2e83d78f701a9aa7c9539739aa5" + version "9.4.6" + resolved "https://registry.yarnpkg.com/@types/node/-/node-9.4.6.tgz#d8176d864ee48753d053783e4e463aec86b8d82e" + +"@types/zen-observable@0.5.3": + version "0.5.3" + resolved "https://registry.yarnpkg.com/@types/zen-observable/-/zen-observable-0.5.3.tgz#91b728599544efbb7386d8b6633693a3c2e7ade5" JSONStream@^1.0.4: version "1.3.2" @@ -166,7 +189,7 @@ JSONStream@^1.0.4: jsonparse "^1.2.0" through ">=2.2.7 <3" -abab@^1.0.3: +abab@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.4.tgz#5faad9c2c07f60dd76770f71cf025b62a63cfd4e" @@ -180,7 +203,13 @@ abstract-leveldown@2.4.1: dependencies: xtend "~4.0.0" -abstract-leveldown@^3.0.0, abstract-leveldown@~3.0.0: +abstract-leveldown@^4.0.0, abstract-leveldown@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-4.0.2.tgz#106a6dd9e089c0dbe2d52a228846eff61ff5c0a2" + dependencies: + xtend "~4.0.0" + +abstract-leveldown@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-3.0.0.tgz#5cb89f958a44f526779d740d1440e743e0c30a57" dependencies: @@ -205,7 +234,7 @@ acorn-dynamic-import@^3.0.0: dependencies: acorn "^5.0.0" -acorn-globals@^4.0.0: +acorn-globals@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.1.0.tgz#ab716025dbe17c54d3ef81d32ece2b2d99fe2538" dependencies: @@ -235,14 +264,10 @@ acorn@^4.0.3: version "4.0.13" resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" -acorn@^5.0.0, acorn@^5.0.3, acorn@^5.4.1: +acorn@^5.0.0, acorn@^5.0.3, acorn@^5.2.1, acorn@^5.3.0, acorn@^5.4.0, acorn@^5.4.1: version "5.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.4.1.tgz#fdc58d9d17f4a4e98d102ded826a9b9759125102" -acorn@^5.1.2, acorn@^5.2.1: - version "5.2.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.2.1.tgz#317ac7821826c22c702d66189ab8359675f135d7" - add-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" @@ -251,10 +276,14 @@ address@1.0.3, address@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/address/-/address-1.0.3.tgz#b5f50631f8d6cec8bd20c963963afb55e06cbce9" -ajv-keywords@^2.0.0, ajv-keywords@^2.1.0: +ajv-keywords@^2.1.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-2.1.1.tgz#617997fc5f60576894c435f940d819e135b80762" +ajv-keywords@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.1.0.tgz#ac2b27939c543e95d2c06e7f7f5c27be4aa543be" + ajv@^4.9.1: version "4.11.8" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" @@ -262,7 +291,7 @@ ajv@^4.9.1: co "^4.6.0" json-stable-stringify "^1.0.1" -ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@^5.2.3, ajv@^5.3.0: +ajv@^5.0.0, ajv@^5.1.0, ajv@^5.2.3, ajv@^5.3.0: version "5.5.2" resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965" dependencies: @@ -271,6 +300,14 @@ ajv@^5.0.0, ajv@^5.1.0, ajv@^5.1.5, ajv@^5.2.3, ajv@^5.3.0: fast-json-stable-stringify "^2.0.0" json-schema-traverse "^0.3.0" +ajv@^6.1.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.1.1.tgz#978d597fbc2b7d0e5a5c3ddeb149a682f2abfa0e" + dependencies: + fast-deep-equal "^1.0.0" + fast-json-stable-stringify "^2.0.0" + json-schema-traverse "^0.3.0" + align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" @@ -311,7 +348,7 @@ ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" -ansi-styles@^3.1.0, ansi-styles@^3.2.0: +ansi-styles@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" dependencies: @@ -335,6 +372,49 @@ anymatch@^2.0.0: micromatch "^3.1.4" normalize-path "^2.1.1" +apollo-cache-control@^0.0.x: + version "0.0.9" + resolved "https://registry.yarnpkg.com/apollo-cache-control/-/apollo-cache-control-0.0.9.tgz#77100f456fb19526d33b7f595c8ab1a2980dcbb4" + dependencies: + graphql-extensions "^0.0.x" + +apollo-link@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/apollo-link/-/apollo-link-1.1.0.tgz#9d573b16387ee0d8e147b1f319e42c8c562f18f7" + dependencies: + "@types/zen-observable" "0.5.3" + apollo-utilities "^1.0.0" + zen-observable "^0.7.0" + +apollo-server-core@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/apollo-server-core/-/apollo-server-core-1.3.2.tgz#f36855a3ebdc2d77b8b9c454380bf1d706105ffc" + dependencies: + apollo-cache-control "^0.0.x" + apollo-tracing "^0.1.0" + graphql-extensions "^0.0.x" + +apollo-server-express@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/apollo-server-express/-/apollo-server-express-1.3.2.tgz#0ff8201c0bf362804a151e1399767dae6ab7e309" + dependencies: + apollo-server-core "^1.3.2" + apollo-server-module-graphiql "^1.3.0" + +apollo-server-module-graphiql@^1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/apollo-server-module-graphiql/-/apollo-server-module-graphiql-1.3.2.tgz#0a9e4c48dece3af904fee333f95f7b9817335ca7" + +apollo-tracing@^0.1.0: + version "0.1.3" + resolved "https://registry.yarnpkg.com/apollo-tracing/-/apollo-tracing-0.1.3.tgz#6820c066bf20f9d9a4eddfc023f7c83ee2601f0b" + dependencies: + graphql-extensions "^0.0.x" + +apollo-utilities@^1.0.0, apollo-utilities@^1.0.1: + version "1.0.8" + resolved "https://registry.yarnpkg.com/apollo-utilities/-/apollo-utilities-1.0.8.tgz#74d797d38953d2ba35e16f880326e2abcbc8b016" + app-root-path@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/app-root-path/-/app-root-path-2.0.1.tgz#cd62dcf8e4fd5a417efc664d2e5b10653c651b46" @@ -361,8 +441,8 @@ are-we-there-yet@~1.1.2: readable-stream "^2.0.6" argparse@^1.0.7: - version "1.0.9" - resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" dependencies: sprintf-js "~1.0.2" @@ -371,10 +451,11 @@ argsarray@0.0.1: resolved "https://registry.yarnpkg.com/argsarray/-/argsarray-0.0.1.tgz#6e7207b4ecdb39b0af88303fa5ae22bda8df61cb" aria-query@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.7.0.tgz#4af10a1e61573ddea0cf3b99b51c52c05b424d24" + version "0.7.1" + resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-0.7.1.tgz#26cbb5aff64144b0a825be1846e0b16cfa00b11e" dependencies: ast-types-flow "0.0.7" + commander "^2.11.0" arr-diff@^2.0.0: version "2.0.0" @@ -464,8 +545,8 @@ asap@^2.0.6, asap@~2.0.3: resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" asn1.js@^4.0.0: - version "4.9.2" - resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.2.tgz#8117ef4f7ed87cd8f89044b5bff97ac243a16c9a" + version "4.10.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.10.1.tgz#b9c2bf5805f1e64aadeed6df3a2bfafb5a73f5a0" dependencies: bn.js "^4.0.0" inherits "^2.0.1" @@ -533,6 +614,10 @@ async-foreach@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" +async-limiter@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.0.tgz#78faed8c3d074ab81f22b4e985d79e8738f720f8" + async@0.2.9: version "0.2.9" resolved "https://registry.yarnpkg.com/async/-/async-0.2.9.tgz#df63060fbf3d33286a76aaf6d55a2986d9ff8619" @@ -572,8 +657,10 @@ attempt-x@^1.1.0, attempt-x@^1.1.1: resolved "https://registry.yarnpkg.com/attempt-x/-/attempt-x-1.1.1.tgz#fba64e96ce03c3e0bd92c92622061c4df387cb76" attr-accept@^1.0.3: - version "1.1.0" - resolved "https://registry.yarnpkg.com/attr-accept/-/attr-accept-1.1.0.tgz#b5cd35227f163935a8f1de10ed3eba16941f6be6" + version "1.1.2" + resolved "https://registry.yarnpkg.com/attr-accept/-/attr-accept-1.1.2.tgz#6836bfe054e4ef1ee3076fdde56cec9bb3ffead6" + dependencies: + core-js "^2.5.0" authsome@0.0.9: version "0.0.9" @@ -591,19 +678,19 @@ autoprefixer@^6.3.1: postcss-value-parser "^3.2.3" autoprefixer@^7.1.2: - version "7.2.3" - resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.3.tgz#c2841e38b7940c2d0a9bbffd72c75f33637854f8" + version "7.2.6" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-7.2.6.tgz#256672f86f7c735da849c4f07d008abb056067dc" dependencies: - browserslist "^2.10.0" - caniuse-lite "^1.0.30000783" + browserslist "^2.11.3" + caniuse-lite "^1.0.30000805" normalize-range "^0.1.2" num2fraction "^1.2.2" - postcss "^6.0.14" + postcss "^6.0.17" postcss-value-parser "^3.2.3" -aws-sdk@^2.185.0: - version "2.197.0" - resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.197.0.tgz#986e3749f4d1944c6253d7824aa8035efb1db0e4" +aws-sdk@^2.185.0, aws-sdk@^2.197.0, aws-sdk@^2.2.36: + version "2.198.0" + resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.198.0.tgz#2245311337ddc844cc34c13f3fcf3b7ea843f434" dependencies: buffer "4.9.1" events "^1.1.1" @@ -654,7 +741,7 @@ babel-cli@^6.26.0: optionalDependencies: chokidar "^1.6.1" -babel-code-frame@6.26.0, babel-code-frame@^6.11.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: +babel-code-frame@6.26.0, babel-code-frame@^6.22.0, babel-code-frame@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.26.0.tgz#63fd43f7dc1e3bb7ce35947db8fe369a3f58c74b" dependencies: @@ -687,17 +774,19 @@ babel-core@^6.0.0, babel-core@^6.26.0: source-map "^0.5.6" babel-eslint@^8.0.2: - version "8.0.3" - resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.0.3.tgz#f29ecf02336be438195325cd47c468da81ee4e98" + version "8.2.2" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-8.2.2.tgz#1102273354c6f0b29b4ea28a65f97d122296b68b" dependencies: - "@babel/code-frame" "7.0.0-beta.31" - "@babel/traverse" "7.0.0-beta.31" - "@babel/types" "7.0.0-beta.31" - babylon "7.0.0-beta.31" + "@babel/code-frame" "^7.0.0-beta.40" + "@babel/traverse" "^7.0.0-beta.40" + "@babel/types" "^7.0.0-beta.40" + babylon "^7.0.0-beta.40" + eslint-scope "~3.7.1" + eslint-visitor-keys "^1.0.0" babel-generator@^6.18.0, babel-generator@^6.26.0: - version "6.26.0" - resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.0.tgz#ac1ae20070b79f6e3ca1d3269613053774f20dc5" + version "6.26.1" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.26.1.tgz#1844408d3b8f0d35a404ea7ac180f087a601bd90" dependencies: babel-messages "^6.23.0" babel-runtime "^6.26.0" @@ -705,7 +794,7 @@ babel-generator@^6.18.0, babel-generator@^6.26.0: detect-indent "^4.0.0" jsesc "^1.3.0" lodash "^4.17.4" - source-map "^0.5.6" + source-map "^0.5.7" trim-right "^1.0.1" babel-helper-bindify-decorators@^6.24.1: @@ -841,12 +930,12 @@ babel-jest@^21.2.0: babel-plugin-istanbul "^4.0.0" babel-preset-jest "^21.2.0" -babel-jest@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-22.1.0.tgz#7fae6f655fffe77e818a8c2868c754a42463fdfd" +babel-jest@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-22.4.0.tgz#79479739c87a39327383bb944a0a8a2deb5c9b4d" dependencies: babel-plugin-istanbul "^4.1.5" - babel-preset-jest "^22.1.0" + babel-preset-jest "^22.2.0" babel-loader@^7.1.2: version "7.1.2" @@ -880,9 +969,9 @@ babel-plugin-jest-hoist@^21.2.0: version "21.2.0" resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-21.2.0.tgz#2cef637259bd4b628a6cace039de5fcd14dbb006" -babel-plugin-jest-hoist@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-22.1.0.tgz#c1281dd7887d77a1711dc760468c3b8285dde9ee" +babel-plugin-jest-hoist@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-22.2.0.tgz#bd34f39d652406669713b8c89e23ef25c890b993" babel-plugin-syntax-async-functions@^6.8.0: version "6.13.0" @@ -1275,11 +1364,11 @@ babel-preset-jest@^21.2.0: babel-plugin-jest-hoist "^21.2.0" babel-plugin-syntax-object-rest-spread "^6.13.0" -babel-preset-jest@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-22.1.0.tgz#ff4e704102f9642765e2254226050561d8942ec9" +babel-preset-jest@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-22.2.0.tgz#f77b43f06ef4d8547214b2e206cc76a25c3ba0e2" dependencies: - babel-plugin-jest-hoist "^22.1.0" + babel-plugin-jest-hoist "^22.2.0" babel-plugin-syntax-object-rest-spread "^6.13.0" babel-preset-react@^6.24.1: @@ -1368,6 +1457,10 @@ babylon@7.0.0-beta.31: version "7.0.0-beta.31" resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.31.tgz#7ec10f81e0e456fd0f855ad60fa30c2ac454283f" +babylon@7.0.0-beta.40, babylon@^7.0.0-beta.40: + version "7.0.0-beta.40" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-7.0.0-beta.40.tgz#91fc8cd56d5eb98b28e6fde41045f2957779940a" + babylon@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.18.0.tgz#af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3" @@ -1385,12 +1478,12 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" base62@^1.1.0: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base62/-/base62-1.2.1.tgz#95a5a22350b0a557f3f081247fc2c398803ecb0c" + version "1.2.7" + resolved "https://registry.yarnpkg.com/base62/-/base62-1.2.7.tgz#5c01aad73c0124f9535cff1bdb9c4e6ccf838cfb" base64-js@^1.0.2: - version "1.2.1" - resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.1.tgz#a91947da1f4a516ea38e5b4ec0ec3773675e0886" + version "1.2.3" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.3.tgz#fb13668233d9614cf5fb4bce95a9ba4096cdf801" base64url@2.0.0, base64url@^2.0.0: version "2.0.0" @@ -1530,9 +1623,9 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" -braces@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.0.tgz#a46941cb5fb492156b3d6a656e06c35364e3e66e" +braces@^2.3.0, braces@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.1.tgz#7086c913b4e5a08dbe37ac0ee6a2500c4ba691bb" dependencies: arr-flatten "^1.1.0" array-unique "^0.3.2" @@ -1540,6 +1633,7 @@ braces@^2.3.0: extend-shallow "^2.0.1" fill-range "^4.0.0" isobject "^3.0.1" + kind-of "^6.0.2" repeat-element "^1.1.2" snapdragon "^0.8.1" snapdragon-node "^2.0.1" @@ -1629,12 +1723,12 @@ browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: caniuse-db "^1.0.30000639" electron-to-chromium "^1.2.7" -browserslist@^2.1.2, browserslist@^2.10.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.10.0.tgz#bac5ee1cc69ca9d96403ffb8a3abdc5b6aed6346" +browserslist@^2.1.2, browserslist@^2.11.3: + version "2.11.3" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.11.3.tgz#fe36167aed1bbcde4827ebfe71347a2cc70b99b2" dependencies: - caniuse-lite "^1.0.30000780" - electron-to-chromium "^1.3.28" + caniuse-lite "^1.0.30000792" + electron-to-chromium "^1.3.30" bser@^2.0.0: version "2.0.0" @@ -1682,8 +1776,8 @@ buffer@4.9.1, buffer@^4.3.0: isarray "^1.0.0" buffer@^5.0.3: - version "5.0.8" - resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.0.8.tgz#84daa52e7cf2fa8ce4195bc5cf0f7809e0930b24" + version "5.1.0" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.1.0.tgz#c913e43678c7cb7c8bd16afbcddb6c5505e8f9fe" dependencies: base64-js "^1.0.2" ieee754 "^1.1.4" @@ -1712,22 +1806,22 @@ bytes@3.0.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" cacache@^10.0.0, cacache@^10.0.1: - version "10.0.2" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.2.tgz#105a93a162bbedf3a25da42e1939ed99ffb145f8" + version "10.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-10.0.4.tgz#6452367999eff9d4188aefd9a14e9d7c6a263460" dependencies: - bluebird "^3.5.0" + bluebird "^3.5.1" chownr "^1.0.1" glob "^7.1.2" graceful-fs "^4.1.11" lru-cache "^4.1.1" - mississippi "^1.3.0" + mississippi "^2.0.0" mkdirp "^0.5.1" move-concurrently "^1.0.1" promise-inflight "^1.0.1" - rimraf "^2.6.1" - ssri "^5.0.0" + rimraf "^2.6.2" + ssri "^5.2.4" unique-filename "^1.1.0" - y18n "^3.2.1" + y18n "^4.0.0" cache-base@^1.0.1: version "1.0.1" @@ -1813,12 +1907,12 @@ caniuse-api@^1.5.2: lodash.uniq "^4.5.0" caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: - version "1.0.30000808" - resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000808.tgz#30dfd83009d5704f02dffb37725068ed12a366bb" + version "1.0.30000810" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000810.tgz#bd25830c41efab64339a2e381f49677343c84509" -caniuse-lite@^1.0.30000780, caniuse-lite@^1.0.30000783: - version "1.0.30000784" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000784.tgz#129ced74e9a1280a441880b6cd2bce30ef59e6c0" +caniuse-lite@^1.0.30000792, caniuse-lite@^1.0.30000805: + version "1.0.30000810" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000810.tgz#47585fffce0e9f3593a6feea4673b945424351d9" capture-stack-trace@^1.0.0: version "1.0.0" @@ -1857,7 +1951,7 @@ chalk@1.1.3, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.0, chalk@^2.3.0, chalk@^2.3.1: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.1.tgz#523fe2678aec7b04e8041909292fe8b17059b796" dependencies: @@ -1865,13 +1959,9 @@ chalk@^2.0.0, chalk@^2.3.0, chalk@^2.3.1: escape-string-regexp "^1.0.5" supports-color "^5.2.0" -chalk@^2.0.1, chalk@^2.1.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.3.0.tgz#b5ea48efc9c1793dccc9b4767c93914d3f2d52ba" - dependencies: - ansi-styles "^3.1.0" - escape-string-regexp "^1.0.5" - supports-color "^4.0.0" +chance@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/chance/-/chance-1.0.13.tgz#666bec2db42b3084456a3e4f4c28a82db5ccb7e6" change-emitter@^0.1.2: version "0.1.6" @@ -2104,8 +2194,8 @@ code-point-at@^1.0.0: resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" codemirror@^5.32.0: - version "5.34.0" - resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.34.0.tgz#e345dcc09a6149db65cc70dff9d389c1c4b0cd06" + version "5.35.0" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.35.0.tgz#280653d495455bc66aa87e6284292b02775ba878" "cokourier-prime-sans@git+https://gitlab.coko.foundation/julientaq/cokourier-sans-prime.git": version "0.0.1" @@ -2189,18 +2279,22 @@ command-join@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/command-join/-/command-join-2.0.0.tgz#52e8b984f4872d952ff1bdc8b98397d27c7144cf" -commander@2.14.x, commander@^2.9.0, commander@~2.14.1: +commander@2.14.x, commander@^2.11.0, commander@^2.5.0, commander@^2.9.0, commander@~2.14.1: version "2.14.1" resolved "https://registry.yarnpkg.com/commander/-/commander-2.14.1.tgz#2235123e37af8ca3c65df45b026dbd357b01b9aa" -commander@^2.11.0, commander@^2.5.0, commander@~2.12.1: - version "2.12.2" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" - commander@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781" +commander@~2.12.1: + version "2.12.2" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" + +commander@~2.13.0: + version "2.13.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.13.0.tgz#6964bca67685df7c1f1430c584f07d7597885b9c" + common-dir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/common-dir/-/common-dir-1.0.1.tgz#4fd872085ebc5f262d9cc23b0ff34b3e457677f0" @@ -2240,19 +2334,19 @@ component-emitter@^1.2.0, component-emitter@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.2.1.tgz#137918d6d78283f7df7a6b7c5a63e140e69425e6" -compressible@~2.0.11: - version "2.0.12" - resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.12.tgz#c59a5c99db76767e9876500e271ef63b3493bd66" +compressible@~2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.13.tgz#0d1020ab924b2fdb4d6279875c7d6daba6baa7a9" dependencies: - mime-db ">= 1.30.0 < 2" + mime-db ">= 1.33.0 < 2" compression@^1.5.2: - version "1.7.1" - resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.1.tgz#eff2603efc2e22cf86f35d2eb93589f9875373db" + version "1.7.2" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.2.tgz#aaffbcd6aaf854b44ebb280353d5ad1651f59a69" dependencies: accepts "~1.3.4" bytes "3.0.0" - compressible "~2.0.11" + compressible "~2.0.13" debug "2.6.9" on-headers "~1.0.1" safe-buffer "5.1.1" @@ -2271,8 +2365,8 @@ concat-stream@^1.4.10, concat-stream@^1.5.0, concat-stream@^1.6.0: typedarray "^0.0.6" config@^1.21.0, config@^1.26.1, config@^1.26.2: - version "1.28.1" - resolved "https://registry.yarnpkg.com/config/-/config-1.28.1.tgz#7625d2a1e4c90f131d8a73347982d93c3873282d" + version "1.29.4" + resolved "https://registry.yarnpkg.com/config/-/config-1.29.4.tgz#1b42752ed86b363fc4025960569fd74978862a92" dependencies: json5 "0.4.0" os-homedir "1.0.2" @@ -2303,13 +2397,11 @@ content-disposition@0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" -content-security-policy-builder@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/content-security-policy-builder/-/content-security-policy-builder-1.1.0.tgz#d91f1b076236c119850c7dee9924bf55e05772b3" - dependencies: - dashify "^0.2.0" +content-security-policy-builder@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/content-security-policy-builder/-/content-security-policy-builder-2.0.0.tgz#8749a1d542fcbe82237281ea9f716ce68b394dd2" -content-type-parser@^1.0.1: +content-type-parser@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/content-type-parser/-/content-type-parser-1.0.2.tgz#caabe80623e63638b2502fd4c7f12ff4ce2352e7" @@ -2317,46 +2409,46 @@ content-type@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" -conventional-changelog-angular@^1.5.2: - version "1.6.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-1.6.0.tgz#0a26a071f2c9fcfcf2b86ba0cfbf6e6301b75bfa" +conventional-changelog-angular@^1.6.5: + version "1.6.5" + resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-1.6.5.tgz#936249e897501affdffc6043da45cab59d6f0907" dependencies: compare-func "^1.3.1" q "^1.4.1" -conventional-changelog-atom@^0.1.2: - version "0.1.2" - resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-0.1.2.tgz#12595ad5267a6937c34cf900281b1c65198a4c63" +conventional-changelog-atom@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-atom/-/conventional-changelog-atom-0.2.3.tgz#117d024e5cf9e28dcbd0575981105395be1bca74" dependencies: q "^1.4.1" -conventional-changelog-cli@^1.3.2: - version "1.3.5" - resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-1.3.5.tgz#46c51496216b7406588883defa6fac589e9bb31e" +conventional-changelog-cli@^1.3.13: + version "1.3.14" + resolved "https://registry.yarnpkg.com/conventional-changelog-cli/-/conventional-changelog-cli-1.3.14.tgz#2560f640929baf97bb65457f77a12a57d5322852" dependencies: add-stream "^1.0.0" - conventional-changelog "^1.1.7" + conventional-changelog "^1.1.16" lodash "^4.1.0" meow "^3.7.0" tempfile "^1.1.1" -conventional-changelog-codemirror@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.2.1.tgz#299a4f7147baf350e6c8158fc54954a291c5cc09" +conventional-changelog-codemirror@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-codemirror/-/conventional-changelog-codemirror-0.3.3.tgz#e1ec78e77e7fe26a2bd18e32f02523527916a07b" dependencies: q "^1.4.1" -conventional-changelog-core@^1.9.3: - version "1.9.5" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-1.9.5.tgz#5db7566dad7c0cb75daf47fbb2976f7bf9928c1d" +conventional-changelog-core@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-2.0.4.tgz#bbc476109c6b28ba6328b0b417f5ab5bfc7ca28a" dependencies: - conventional-changelog-writer "^2.0.3" - conventional-commits-parser "^2.1.0" + conventional-changelog-writer "^3.0.3" + conventional-commits-parser "^2.1.4" dateformat "^1.0.12" get-pkg-repo "^1.0.0" - git-raw-commits "^1.3.0" + git-raw-commits "^1.3.3" git-remote-origin-url "^2.0.0" - git-semver-tags "^1.2.3" + git-semver-tags "^1.3.3" lodash "^4.0.0" normalize-package-data "^2.3.5" q "^1.4.1" @@ -2364,21 +2456,21 @@ conventional-changelog-core@^1.9.3: read-pkg-up "^1.0.1" through2 "^2.0.0" -conventional-changelog-ember@^0.2.9: - version "0.2.10" - resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-0.2.10.tgz#dcd6e4cdc2e6c2b58653cf4d2cb1656a60421929" +conventional-changelog-ember@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/conventional-changelog-ember/-/conventional-changelog-ember-0.3.5.tgz#db9a23f01103c6a0446ed2077ed5c87656d0571a" dependencies: q "^1.4.1" -conventional-changelog-eslint@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-0.2.1.tgz#2c2a11beb216f80649ba72834180293b687c0662" +conventional-changelog-eslint@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-eslint/-/conventional-changelog-eslint-1.0.3.tgz#023002a3f776266c501e4d4def7b0bb24130f29d" dependencies: q "^1.4.1" -conventional-changelog-express@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-0.2.1.tgz#838d9e1e6c9099703b150b9c19aa2d781742bd6c" +conventional-changelog-express@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-express/-/conventional-changelog-express-0.3.3.tgz#25aef42a30b5457f97681a94f2ac9b0ee515484a" dependencies: q "^1.4.1" @@ -2394,19 +2486,23 @@ conventional-changelog-jscs@^0.1.0: dependencies: q "^1.4.1" -conventional-changelog-jshint@^0.2.1: - version "0.2.1" - resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-0.2.1.tgz#86139bb3ac99899f2b177e9617e09b37d99bcf3a" +conventional-changelog-jshint@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-jshint/-/conventional-changelog-jshint-0.3.3.tgz#28b6fe4d41fb945f38c6c31cd195fe37594f0007" dependencies: compare-func "^1.3.1" q "^1.4.1" -conventional-changelog-writer@^2.0.3: - version "2.0.3" - resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-2.0.3.tgz#073b0c39f1cc8fc0fd9b1566e93833f51489c81c" +conventional-changelog-preset-loader@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-1.1.5.tgz#d5af525d7ad81179d9b54137284d74d665997fa7" + +conventional-changelog-writer@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-3.0.3.tgz#2faa65739370769639fff1c0008722162936d46c" dependencies: compare-func "^1.3.1" - conventional-commits-filter "^1.1.1" + conventional-commits-filter "^1.1.4" dateformat "^1.0.11" handlebars "^4.0.2" json-stringify-safe "^5.0.1" @@ -2416,35 +2512,36 @@ conventional-changelog-writer@^2.0.3: split "^1.0.0" through2 "^2.0.0" -conventional-changelog@^1.1.7: - version "1.1.7" - resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-1.1.7.tgz#9151a62b1d8edb2d82711dabf5b7cf71041f82b1" - dependencies: - conventional-changelog-angular "^1.5.2" - conventional-changelog-atom "^0.1.2" - conventional-changelog-codemirror "^0.2.1" - conventional-changelog-core "^1.9.3" - conventional-changelog-ember "^0.2.9" - conventional-changelog-eslint "^0.2.1" - conventional-changelog-express "^0.2.1" +conventional-changelog@^1.1.16: + version "1.1.16" + resolved "https://registry.yarnpkg.com/conventional-changelog/-/conventional-changelog-1.1.16.tgz#fa78386c831f5b1ae45f60391ef015c2a4a400b9" + dependencies: + conventional-changelog-angular "^1.6.5" + conventional-changelog-atom "^0.2.3" + conventional-changelog-codemirror "^0.3.3" + conventional-changelog-core "^2.0.4" + conventional-changelog-ember "^0.3.5" + conventional-changelog-eslint "^1.0.3" + conventional-changelog-express "^0.3.3" conventional-changelog-jquery "^0.1.0" conventional-changelog-jscs "^0.1.0" - conventional-changelog-jshint "^0.2.1" + conventional-changelog-jshint "^0.3.3" + conventional-changelog-preset-loader "^1.1.5" conventional-commit-types@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/conventional-commit-types/-/conventional-commit-types-2.2.0.tgz#5db95739d6c212acbe7b6f656a11b940baa68946" -conventional-commits-filter@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-1.1.1.tgz#72172319c0c88328a015b30686b55527b3a5e54a" +conventional-commits-filter@^1.1.1, conventional-commits-filter@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-1.1.4.tgz#8b5be3979c372e4f7440180d5c655a94ac5a134a" dependencies: is-subset "^0.1.1" modify-values "^1.0.0" -conventional-commits-parser@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-2.1.0.tgz#9b4b7c91124bf2a1a9a2cc1c72760d382cbbb229" +conventional-commits-parser@^2.1.1, conventional-commits-parser@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-2.1.4.tgz#86d2c21029268d99543c4ebda37d76fe5c44d8d1" dependencies: JSONStream "^1.0.4" is-text-path "^1.0.0" @@ -2454,15 +2551,15 @@ conventional-commits-parser@^2.1.0: through2 "^2.0.0" trim-off-newlines "^1.0.0" -conventional-recommended-bump@^1.0.1: - version "1.1.0" - resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-1.1.0.tgz#964d4fcc70fb5259d41fa9b39d3df6afdb87d253" +conventional-recommended-bump@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-1.2.1.tgz#1b7137efb5091f99fe009e2fe9ddb7cc490e9375" dependencies: concat-stream "^1.4.10" conventional-commits-filter "^1.1.1" - conventional-commits-parser "^2.1.0" + conventional-commits-parser "^2.1.1" git-raw-commits "^1.3.0" - git-semver-tags "^1.2.3" + git-semver-tags "^1.3.0" meow "^3.3.0" object-assign "^4.0.1" @@ -2504,22 +2601,7 @@ copy-descriptor@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" -copy-webpack-plugin@^4.0.1: - version "4.3.0" - resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.3.0.tgz#cfdf4d131c78d66917a1bb863f86630497aacf42" - dependencies: - cacache "^10.0.1" - find-cache-dir "^1.0.0" - globby "^7.1.1" - is-glob "^4.0.0" - loader-utils "^0.2.15" - lodash "^4.3.0" - minimatch "^3.0.4" - p-limit "^1.0.0" - pify "^3.0.0" - serialize-javascript "^1.4.0" - -copy-webpack-plugin@^4.3.0: +copy-webpack-plugin@^4.0.1, copy-webpack-plugin@^4.3.0: version "4.4.1" resolved "https://registry.yarnpkg.com/copy-webpack-plugin/-/copy-webpack-plugin-4.4.1.tgz#1e8c366211db6dc2ddee40e5a3e4fc661dd149e8" dependencies: @@ -2536,7 +2618,7 @@ core-js@^1.0.0: version "1.2.7" resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636" -core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0: +core-js@^2.4.0, core-js@^2.4.1, core-js@^2.5.0, core-js@^2.5.3: version "2.5.3" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.3.tgz#8acc38345824f16d8365b7c9b4259168e8ed603e" @@ -2566,6 +2648,15 @@ cosmiconfig@^3.1.0: parse-json "^3.0.0" require-from-string "^2.0.1" +cosmiconfig@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.9.0" + parse-json "^4.0.0" + require-from-string "^2.0.1" + create-ecdh@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" @@ -2662,26 +2753,7 @@ css-initials@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/css-initials/-/css-initials-0.2.0.tgz#14c225bd8656255a6baee07231ef82fa55aacaa3" -css-loader@^0.28.4: - version "0.28.7" - resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.7.tgz#5f2ee989dd32edd907717f953317656160999c1b" - dependencies: - babel-code-frame "^6.11.0" - css-selector-tokenizer "^0.7.0" - cssnano ">=2.6.1 <4" - icss-utils "^2.1.0" - loader-utils "^1.0.2" - lodash.camelcase "^4.3.0" - object-assign "^4.0.1" - postcss "^5.0.6" - postcss-modules-extract-imports "^1.0.0" - postcss-modules-local-by-default "^1.0.1" - postcss-modules-scope "^1.0.0" - postcss-modules-values "^1.1.0" - postcss-value-parser "^3.3.0" - source-list-map "^2.0.0" - -css-loader@^0.28.7: +css-loader@^0.28.4, css-loader@^0.28.7: version "0.28.9" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.28.9.tgz#68064b85f4e271d7ce4c48a58300928e535d1c95" dependencies: @@ -2718,8 +2790,8 @@ css-selector-tokenizer@^0.7.0: regexpu-core "^1.0.0" css-to-react-native@^2.0.3: - version "2.1.1" - resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.1.1.tgz#ea0f6ca3cdbc37cb40f3f4f55b49d3bb28b8a43e" + version "2.1.2" + resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-2.1.2.tgz#c06d628467ef961c85ec358a90f3c87469fb0095" dependencies: css-color-keywords "^1.0.0" fbjs "^0.8.5" @@ -2733,7 +2805,7 @@ cssesc@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" -"cssnano@>=2.6.1 <4", cssnano@^3.10.0: +cssnano@^3.10.0: version "3.10.0" resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" dependencies: @@ -2837,10 +2909,6 @@ dasherize@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/dasherize/-/dasherize-2.0.0.tgz#6d809c9cd0cf7bb8952d80fc84fa13d47ddb1308" -dashify@^0.2.0: - version "0.2.2" - resolved "https://registry.yarnpkg.com/dashify/-/dashify-0.2.2.tgz#6a07415a01c91faf4a32e38d9dfba71f61cb20fe" - date-fns@^1.27.2: version "1.29.0" resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-1.29.0.tgz#12e609cdcb935127311d04d33334e2960a2a54e6" @@ -2856,19 +2924,13 @@ dateformat@^1.0.11, dateformat@^1.0.12: get-stdin "^4.0.1" meow "^3.3.0" -debug@2.6.9, debug@^2.1.0, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8: +debug@2.6.9, debug@^2.1.0, debug@^2.2.0, debug@^2.3.3, debug@^2.6.0, debug@^2.6.6, debug@^2.6.8, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: ms "2.0.0" -debug@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.0.1.tgz#0564c612b521dc92d9f2988f0549e34f9c98db64" - dependencies: - ms "2.0.0" - -debug@^3.0.0, debug@^3.0.1, debug@^3.1.0: +debug@3.1.0, debug@^3.0.0, debug@^3.0.1, debug@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" dependencies: @@ -2889,6 +2951,12 @@ decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" +decompress-response@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + dependencies: + mimic-response "^1.0.0" + dedent@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" @@ -2931,6 +2999,12 @@ deferred-leveldown@~2.0.2: dependencies: abstract-leveldown "~3.0.0" +deferred-leveldown@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-3.0.0.tgz#bff7241bf156aa3635f520bedf34330c408d3307" + dependencies: + abstract-leveldown "~4.0.0" + define-properties@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" @@ -2950,6 +3024,13 @@ define-property@^1.0.0: dependencies: is-descriptor "^1.0.0" +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + defined@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" @@ -2993,6 +3074,10 @@ depd@^1.1.0, depd@~1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" +deprecated-decorator@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/deprecated-decorator/-/deprecated-decorator-0.1.6.tgz#00966317b7a12fe92f3cc831f7583af329b86c37" + des.js@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" @@ -3014,7 +3099,7 @@ detect-indent@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" -detect-libc@^1.0.2: +detect-libc@^1.0.2, detect-libc@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" @@ -3034,8 +3119,8 @@ detect-port-alt@1.1.3: debug "^2.6.0" detective@^4.3.1: - version "4.7.0" - resolved "https://registry.yarnpkg.com/detective/-/detective-4.7.0.tgz#6276e150f9e50829ad1f90ace4d9a2304188afcf" + version "4.7.1" + resolved "https://registry.yarnpkg.com/detective/-/detective-4.7.1.tgz#0eca7314338442febb6d65da54c10bb1c82b246e" dependencies: acorn "^5.2.1" defined "^1.0.0" @@ -3115,7 +3200,7 @@ doctrine@1.5.0: esutils "^2.0.2" isarray "^1.0.0" -doctrine@^2.0.0, doctrine@^2.0.2: +doctrine@^2.0.0, doctrine@^2.0.2, doctrine@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" dependencies: @@ -3143,8 +3228,8 @@ dom-walk@^0.1.0: resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" domain-browser@^1.1.1: - version "1.1.7" - resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" + version "1.2.0" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.2.0.tgz#3d31f50191a6749dd1375a7f522e823d42e54eda" domelementtype@1, domelementtype@^1.3.0: version "1.3.0" @@ -3155,8 +3240,10 @@ domelementtype@~1.1.1: resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" domexception@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.0.tgz#81fe5df81b3f057052cde3a9fa9bf536a85b9ab0" + version "1.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" + dependencies: + webidl-conversions "^4.0.2" domhandler@2.1: version "2.1.0" @@ -3184,8 +3271,8 @@ domutils@1.5.1: domelementtype "1" domutils@^1.5.1: - version "1.6.2" - resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff" + version "1.7.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.7.0.tgz#56ea341e834e06e6748af7a1cb25da67ea9f8c2a" dependencies: dom-serializer "0" domelementtype "1" @@ -3252,20 +3339,10 @@ ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" -electron-releases@^2.1.0: - version "2.10.0" - resolved "https://registry.yarnpkg.com/electron-releases/-/electron-releases-2.10.0.tgz#723c8740b5bbd5e992a41cfd3ee38d69e95ba724" - -electron-to-chromium@^1.2.7: +electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.30: version "1.3.33" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.33.tgz#bf00703d62a7c65238136578c352d6c5c042a545" -electron-to-chromium@^1.3.28: - version "1.3.30" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.30.tgz#9666f532a64586651fc56a72513692e820d06a80" - dependencies: - electron-releases "^2.1.0" - elegant-spinner@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e" @@ -3298,11 +3375,11 @@ encodeurl@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" -encoding-down@~3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-3.0.1.tgz#80a4415ec4d2805a02a67e5eac880d9754b796e0" +encoding-down@~4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-4.0.0.tgz#f71c8addc51f0ed186784e79b8ac75cfaa44119f" dependencies: - abstract-leveldown "^3.0.0" + abstract-leveldown "^4.0.0" level-codec "^8.0.0" level-errors "^1.0.4" @@ -3367,23 +3444,7 @@ enzyme-adapter-utils@^1.1.0, enzyme-adapter-utils@^1.3.0: object.assign "^4.0.4" prop-types "^15.6.0" -enzyme@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.2.0.tgz#998bdcda0fc71b8764a0017f7cc692c943f54a7a" - dependencies: - cheerio "^1.0.0-rc.2" - function.prototype.name "^1.0.3" - has "^1.0.1" - is-subset "^0.1.1" - lodash "^4.17.4" - object-is "^1.0.1" - object.assign "^4.0.4" - object.entries "^1.0.4" - object.values "^1.0.4" - raf "^3.4.0" - rst-selector-parser "^2.2.3" - -enzyme@^3.3.0: +enzyme@^3.2.0, enzyme@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/enzyme/-/enzyme-3.3.0.tgz#0971abd167f2d4bf3f5bd508229e1c4b6dc50479" dependencies: @@ -3404,18 +3465,12 @@ enzyme@^3.3.0: raf "^3.4.0" rst-selector-parser "^2.2.3" -errno@^0.1.3, errno@^0.1.4: +errno@^0.1.3, errno@^0.1.4, errno@~0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.7.tgz#4684d71779ad39af177e3f007996f7c67c852618" dependencies: prr "~1.0.1" -errno@~0.1.1: - version "0.1.6" - resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.6.tgz#c386ce8a6283f14fc09563b71560908c9bf53026" - dependencies: - prr "~1.0.1" - error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" @@ -3455,17 +3510,17 @@ es3ify@^0.2.2: through "~2.3.4" es5-ext@^0.10.14, es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: - version "0.10.37" - resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.37.tgz#0ee741d148b80069ba27d020393756af257defc3" + version "0.10.39" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.39.tgz#fca21b67559277ca4ac1a1ed7048b107b6f76d87" dependencies: - es6-iterator "~2.0.1" + es6-iterator "~2.0.3" es6-symbol "~3.1.1" -es6-error@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.0.2.tgz#eec5c726eacef51b7f6b73c20db6e1b13b069c98" +es6-error@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/es6-error/-/es6-error-4.1.1.tgz#9e3af407459deed47e9a91f9b885a84eb05c561d" -es6-iterator@^2.0.1, es6-iterator@~2.0.1: +es6-iterator@^2.0.1, es6-iterator@~2.0.1, es6-iterator@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" dependencies: @@ -3588,11 +3643,11 @@ eslint-config-standard@^10.2.1: resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-10.2.1.tgz#c061e4d066f379dc17cd562c64e819b4dd454591" eslint-import-resolver-node@^0.3.1: - version "0.3.1" - resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz#4422574cde66a9a7b099938ee4d508a199e0e3cc" + version "0.3.2" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz#58f15fb839b8d0576ca980413476aab2472db66a" dependencies: - debug "^2.6.8" - resolve "^1.2.0" + debug "^2.6.9" + resolve "^1.5.0" eslint-module-utils@^2.1.1: version "2.1.1" @@ -3617,8 +3672,8 @@ eslint-plugin-import@^2.8.0: read-pkg-up "^2.0.0" eslint-plugin-jest@^21.4.0: - version "21.5.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-21.5.0.tgz#c7a3bd2ee9d1c832b4e31dec89f6ad93e08d4853" + version "21.12.2" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-21.12.2.tgz#325f7c6a5078aed51ea087c33c26792337b5ba37" eslint-plugin-jsx-a11y@^6.0.2: version "6.0.3" @@ -3642,8 +3697,8 @@ eslint-plugin-node@^5.2.1: semver "5.3.0" eslint-plugin-prettier@^2.3.1: - version "2.4.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.4.0.tgz#85cab0775c6d5e3344ef01e78d960f166fb93aae" + version "2.6.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-2.6.0.tgz#33e4e228bdb06142d03c560ce04ec23f6c767dd7" dependencies: fast-diff "^1.1.1" jest-docblock "^21.0.0" @@ -3653,12 +3708,12 @@ eslint-plugin-promise@^3.6.0: resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.6.0.tgz#54b7658c8f454813dc2a870aff8152ec4969ba75" eslint-plugin-react@^7.4.0: - version "7.5.1" - resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.5.1.tgz#52e56e8d80c810de158859ef07b880d2f56ee30b" + version "7.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.7.0.tgz#f606c719dbd8a1a2b3d25c16299813878cca0160" dependencies: - doctrine "^2.0.0" + doctrine "^2.0.2" has "^1.0.1" - jsx-ast-utils "^2.0.0" + jsx-ast-utils "^2.0.1" prop-types "^15.6.0" eslint-plugin-standard@^3.0.1: @@ -3669,28 +3724,32 @@ eslint-restricted-globals@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz#35f0d5cbc64c2e3ed62e93b4b1a7af05ba7ed4d7" -eslint-scope@^3.7.1: +eslint-scope@^3.7.1, eslint-scope@~3.7.1: version "3.7.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-3.7.1.tgz#3d63c3edfda02e06e01a452ad88caacc7cdcb6e8" dependencies: esrecurse "^4.1.0" estraverse "^4.1.1" +eslint-visitor-keys@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#3f3180fb2e291017716acb4c9d6d5b5c34a6a81d" + eslint@^4.12.0: - version "4.13.1" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.13.1.tgz#0055e0014464c7eb7878caf549ef2941992b444f" + version "4.18.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-4.18.0.tgz#ebd0ba795af6dc59aa5cee17938160af5950e051" dependencies: ajv "^5.3.0" babel-code-frame "^6.22.0" chalk "^2.1.0" concat-stream "^1.6.0" cross-spawn "^5.1.0" - debug "^3.0.1" - doctrine "^2.0.2" + debug "^3.1.0" + doctrine "^2.1.0" eslint-scope "^3.7.1" + eslint-visitor-keys "^1.0.0" espree "^3.5.2" esquery "^1.0.0" - estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" functional-red-black-tree "^1.0.1" @@ -3723,10 +3782,10 @@ esmangle-evaluator@^1.0.0: resolved "https://registry.yarnpkg.com/esmangle-evaluator/-/esmangle-evaluator-1.0.1.tgz#620d866ef4861b3311f75766d52a8572bb3c6336" espree@^3.5.2: - version "3.5.2" - resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.2.tgz#756ada8b979e9dcfcdb30aad8d1a9304a905e1ca" + version "3.5.3" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.5.3.tgz#931e0af64e7fbbed26b050a29daad1fc64799fa6" dependencies: - acorn "^5.2.1" + acorn "^5.4.0" acorn-jsx "^3.0.0" esprima-fb@^15001.1.0-dev-harmony-fb: @@ -3852,10 +3911,6 @@ execall@^1.0.0: dependencies: clone-regexp "^1.0.0" -exenv@^1.2.0: - version "1.2.2" - resolved "https://registry.yarnpkg.com/exenv/-/exenv-1.2.2.tgz#2ae78e85d9894158670b03d47bec1f03bd91bb9d" - exit-hook@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" @@ -3902,15 +3957,15 @@ expect-ct@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/expect-ct/-/expect-ct-0.1.0.tgz#52735678de18530890d8d7b95f0ac63640958094" -expect@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/expect/-/expect-22.1.0.tgz#f8f9b019ab275d859cbefed531fbaefe8972431d" +expect@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/expect/-/expect-22.4.0.tgz#371edf1ae15b83b5bf5ec34b42f1584660a36c16" dependencies: ansi-styles "^3.2.0" - jest-diff "^22.1.0" + jest-diff "^22.4.0" jest-get-type "^22.1.0" - jest-matcher-utils "^22.1.0" - jest-message-util "^22.1.0" + jest-matcher-utils "^22.4.0" + jest-message-util "^22.4.0" jest-regex-util "^22.1.0" express@^4.15.3, express@^4.16.1, express@^4.16.2: @@ -3954,7 +4009,7 @@ extend-shallow@^2.0.1: dependencies: is-extendable "^0.1.0" -extend-shallow@^3.0.0: +extend-shallow@^3.0.0, extend-shallow@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" dependencies: @@ -3979,7 +4034,7 @@ extglob@^0.3.1: dependencies: is-extglob "^1.0.0" -extglob@^2.0.2: +extglob@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" dependencies: @@ -4101,11 +4156,11 @@ file-entry-cache@^2.0.0: object-assign "^4.0.1" file-loader@^1.1.5: - version "1.1.6" - resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.6.tgz#7b9a8f2c58f00a77fddf49e940f7ac978a3ea0e8" + version "1.1.7" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-1.1.7.tgz#0a3ad0fe81695feeed6f2dac324fce500c30f0a0" dependencies: loader-utils "^1.0.2" - schema-utils "^0.3.0" + schema-utils "^0.4.5" file-type@^3.3.0: version "3.9.0" @@ -4251,7 +4306,7 @@ forever-monitor@^1.7.0: ps-tree "0.0.x" utile "~0.2.1" -form-data@^2.3.1: +form-data@^2.3.1, form-data@~2.3.1: version "2.3.2" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.2.tgz#4970498be604c20c005d4f5c23aecd21d6b49099" dependencies: @@ -4267,14 +4322,6 @@ form-data@~2.1.1: combined-stream "^1.0.5" mime-types "^2.1.12" -form-data@~2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.1.tgz#6fb94fbd71885306d73d15cc497fe4cc4ecd44bf" - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.5" - mime-types "^2.1.12" - formidable@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/formidable/-/formidable-1.1.1.tgz#96b8886f7c3c3508b932d6bd70c4d3a88f35f1a9" @@ -4362,11 +4409,11 @@ function.name-polyfill@^1.0.5: resolved "https://registry.yarnpkg.com/function.name-polyfill/-/function.name-polyfill-1.0.5.tgz#d349bb4e24a324f08120455ee78a04142b1257bb" function.prototype.name@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.0.3.tgz#0099ae5572e9dd6f03c97d023fd92bcc5e639eac" + version "1.1.0" + resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327" dependencies: define-properties "^1.1.2" - function-bind "^1.1.0" + function-bind "^1.1.1" is-callable "^1.1.3" functional-red-black-tree@^1.0.1: @@ -4446,9 +4493,9 @@ getpass@^0.1.1: dependencies: assert-plus "^1.0.0" -git-raw-commits@^1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-1.3.0.tgz#0bc8596e90d5ffe736f7f5546bd2d12f73abaac6" +git-raw-commits@^1.3.0, git-raw-commits@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-1.3.3.tgz#464f9aa14c4e78235e98654f0da467f3702590f9" dependencies: dargs "^4.0.1" lodash.template "^4.0.2" @@ -4463,9 +4510,9 @@ git-remote-origin-url@^2.0.0: gitconfiglocal "^1.0.0" pify "^2.3.0" -git-semver-tags@^1.2.3: - version "1.2.3" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-1.2.3.tgz#188b453882bf9d7a23afd31baba537dab7388d5d" +git-semver-tags@^1.3.0, git-semver-tags@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-1.3.3.tgz#0b0416c43285adfdc93a8038ea25502a09319245" dependencies: meow "^3.3.0" semver "^5.0.1" @@ -4562,13 +4609,9 @@ global@^4.3.0, global@^4.3.1: min-document "^2.19.0" process "~0.5.1" -globals@^10.0.0: - version "10.4.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-10.4.0.tgz#5c477388b128a9e4c5c5d01c7a2aca68c68b2da7" - -globals@^11.0.1: - version "11.1.0" - resolved "https://registry.yarnpkg.com/globals/-/globals-11.1.0.tgz#632644457f5f0e3ae711807183700ebf2e4633e4" +globals@^11.0.1, globals@^11.1.0: + version "11.3.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.3.0.tgz#e04fdb7b9796d8adac9c8f64c14837b2313378b0" globals@^9.18.0: version "9.18.0" @@ -4650,6 +4693,29 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" +graphql-extensions@^0.0.x: + version "0.0.8" + resolved "https://registry.yarnpkg.com/graphql-extensions/-/graphql-extensions-0.0.8.tgz#d14d6e06db466a7f90fb97d75b657ae730278b09" + dependencies: + core-js "^2.5.3" + source-map-support "^0.5.1" + +graphql-tools@^2.18.0: + version "2.21.0" + resolved "https://registry.yarnpkg.com/graphql-tools/-/graphql-tools-2.21.0.tgz#c0d0fbda6f40a87c8d267a2989ade2ae8b9a288e" + dependencies: + apollo-link "^1.1.0" + apollo-utilities "^1.0.1" + deprecated-decorator "^0.1.6" + iterall "^1.1.3" + uuid "^3.1.0" + +graphql@^0.12.3: + version "0.12.3" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-0.12.3.tgz#11668458bbe28261c0dcb6e265f515ba79f6ce07" + dependencies: + iterall "1.1.3" + growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" @@ -4691,7 +4757,7 @@ har-validator@~2.0.6: is-my-json-valid "^2.12.4" pinkie-promise "^2.0.0" -har-validator@~4.2.0, har-validator@~4.2.1: +har-validator@~4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" dependencies: @@ -4828,25 +4894,25 @@ he@1.1.x: version "1.1.1" resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" -helmet-csp@2.6.0: - version "2.6.0" - resolved "https://registry.yarnpkg.com/helmet-csp/-/helmet-csp-2.6.0.tgz#c1f5595afbc5f83e5f1e6c15f842f07a10f6ea04" +helmet-csp@2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/helmet-csp/-/helmet-csp-2.7.0.tgz#7934094617d1feb7bb2dc43bb7d9e8830f774716" dependencies: camelize "1.0.0" - content-security-policy-builder "1.1.0" + content-security-policy-builder "2.0.0" dasherize "2.0.0" lodash.reduce "4.6.0" - platform "1.3.4" + platform "1.3.5" helmet@^3.8.1: - version "3.9.0" - resolved "https://registry.yarnpkg.com/helmet/-/helmet-3.9.0.tgz#7b2cf015a2d109bca83ede7924420799c0e67dee" + version "3.11.0" + resolved "https://registry.yarnpkg.com/helmet/-/helmet-3.11.0.tgz#5eacccc0b5b61d786e29aa3fc5650abf73e1824f" dependencies: dns-prefetch-control "0.1.0" dont-sniff-mimetype "1.0.0" expect-ct "0.1.0" frameguard "3.0.0" - helmet-csp "2.6.0" + helmet-csp "2.7.0" hide-powered-by "1.0.0" hpkp "2.0.0" hsts "2.1.0" @@ -4886,21 +4952,21 @@ hoek@2.x.x: resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" hoek@4.x.x: - version "4.2.0" - resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.0.tgz#72d9d0754f7fe25ca2d01ad8f8f9a9449a89526d" + version "4.2.1" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-4.2.1.tgz#9634502aa12c445dd5a7c5734b572bb8738aacbb" + +hoek@5.x.x: + version "5.0.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-5.0.3.tgz#b71d40d943d0a95da01956b547f83c4a5b4a34ac" hoist-non-react-statics@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz#aa448cf0986d55cc40773b17174b7dd066cb7cfb" -hoist-non-react-statics@^2.1.0, hoist-non-react-statics@^2.5.0: +hoist-non-react-statics@^2.1.0, hoist-non-react-statics@^2.3.0, hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.0.tgz#d2ca2dfc19c5a91c5a6615ce8e564ef0347e2a40" -hoist-non-react-statics@^2.2.1, hoist-non-react-statics@^2.3.0, hoist-non-react-statics@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.3.1.tgz#343db84c6018c650778898240135a1420ee22ce0" - home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" @@ -4939,7 +5005,7 @@ html-comment-regex@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" -html-encoding-sniffer@^1.0.1: +html-encoding-sniffer@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" dependencies: @@ -5215,8 +5281,8 @@ interpret@^1.0.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.1.0.tgz#7ed1b1410c6a0e0f78cf95d3b8440c63f78b8614" invariant@^2.0.0, invariant@^2.1.0, invariant@^2.2.0, invariant@^2.2.1, invariant@^2.2.2: - version "2.2.2" - resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" + version "2.2.3" + resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.3.tgz#1a827dfde7dcbd7c323f0ca826be8fa7c5e9d688" dependencies: loose-envify "^1.0.0" @@ -5228,9 +5294,9 @@ ip@^1.1.0, ip@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" -ipaddr.js@1.5.2: - version "1.5.2" - resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.5.2.tgz#d4b505bde9946987ccf0fc58d9010ff9607e3fa0" +ipaddr.js@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.6.0.tgz#e3fa357b773da619f26e95f049d055c72796f86b" is-absolute-url@^2.0.0: version "2.1.0" @@ -5306,8 +5372,8 @@ is-callable@^1.1.1, is-callable@^1.1.3: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" is-ci@^1.0.10: - version "1.0.10" - resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.0.10.tgz#f739336b2632365061a9d48270cd56ae3369318e" + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.1.0.tgz#247e4162e7860cebbdaf30b774d6b0ac7dcfe7a5" dependencies: ci-info "^1.0.0" @@ -5339,7 +5405,7 @@ is-descriptor@^0.1.0: is-data-descriptor "^0.1.4" kind-of "^5.0.0" -is-descriptor@^1.0.0: +is-descriptor@^1.0.0, is-descriptor@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" dependencies: @@ -5461,12 +5527,17 @@ is-index-x@^1.0.0: to-number-x "^2.0.0" to-string-symbols-supported-x "^1.0.0" +is-my-ip-valid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz#7b351b8e8edd4d3995d4d066680e664d94696824" + is-my-json-valid@^2.12.4: - version "2.17.1" - resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.1.tgz#3da98914a70a22f0a8563ef1511a246c6fc55471" + version "2.17.2" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz#6b2103a288e94ef3de5cf15d29dd85fc4b78d65c" dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" + is-my-ip-valid "^1.0.0" jsonpointer "^4.0.0" xtend "^4.0.0" @@ -5497,6 +5568,10 @@ is-number@^3.0.0: dependencies: kind-of "^3.0.2" +is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-4.0.0.tgz#0026e37f5454d73e356dfe6564699867c6a7f0ff" + is-obj@^1.0.0, is-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" @@ -5514,11 +5589,11 @@ is-observable@^0.2.0: dependencies: symbol-observable "^0.2.2" -is-odd@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-1.0.0.tgz#3b8a932eb028b3775c39bb09e91767accdb69088" +is-odd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-odd/-/is-odd-2.0.0.tgz#7646624671fd7ea558ccd9a2795182f2958f1b24" dependencies: - is-number "^3.0.0" + is-number "^4.0.0" is-path-cwd@^1.0.0: version "1.0.0" @@ -5577,8 +5652,8 @@ is-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" is-resolvable@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.1.tgz#acca1cd36dbe44b974b924321555a70ba03b1cf4" + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.1.0.tgz#fb18f87ce1feb925169c9a407c19318a3206ed88" is-retry-allowed@^1.0.0: version "1.1.0" @@ -5632,7 +5707,7 @@ is-whitespace-character@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-whitespace-character/-/is-whitespace-character-1.0.1.tgz#9ae0176f3282b65457a1992cdb084f8a5f833e3b" -is-windows@^1.0.1: +is-windows@^1.0.1, is-windows@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" @@ -5661,8 +5736,8 @@ isemail@2.x.x: resolved "https://registry.yarnpkg.com/isemail/-/isemail-2.2.1.tgz#0353d3d9a62951080c262c2aa0a42b8ea8e9e2a6" isemail@3.x.x: - version "3.0.0" - resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.0.0.tgz#c89a46bb7a3361e1759f8028f9082488ecce3dff" + version "3.1.1" + resolved "https://registry.yarnpkg.com/isemail/-/isemail-3.1.1.tgz#e8450fe78ff1b48347db599122adcd0668bd92b5" dependencies: punycode "2.x.x" @@ -5692,24 +5767,24 @@ isstream@0.1.x, isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" istanbul-api@^1.1.14: - version "1.2.1" - resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.2.1.tgz#0c60a0515eb11c7d65c6b50bba2c6e999acd8620" + version "1.2.2" + resolved "https://registry.yarnpkg.com/istanbul-api/-/istanbul-api-1.2.2.tgz#e17cd519dd5ec4141197f246fdf380b75487f3b1" dependencies: async "^2.1.4" fileset "^2.0.2" - istanbul-lib-coverage "^1.1.1" + istanbul-lib-coverage "^1.1.2" istanbul-lib-hook "^1.1.0" - istanbul-lib-instrument "^1.9.1" - istanbul-lib-report "^1.1.2" - istanbul-lib-source-maps "^1.2.2" - istanbul-reports "^1.1.3" + istanbul-lib-instrument "^1.9.2" + istanbul-lib-report "^1.1.3" + istanbul-lib-source-maps "^1.2.3" + istanbul-reports "^1.1.4" js-yaml "^3.7.0" mkdirp "^0.5.1" once "^1.4.0" -istanbul-lib-coverage@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.1.tgz#73bfb998885299415c93d38a3e9adf784a77a9da" +istanbul-lib-coverage@^1.1.1, istanbul-lib-coverage@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.1.2.tgz#4113c8ff6b7a40a1ef7350b01016331f63afde14" istanbul-lib-hook@^1.1.0: version "1.1.0" @@ -5717,40 +5792,40 @@ istanbul-lib-hook@^1.1.0: dependencies: append-transform "^0.4.0" -istanbul-lib-instrument@^1.7.5, istanbul-lib-instrument@^1.8.0, istanbul-lib-instrument@^1.9.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.9.1.tgz#250b30b3531e5d3251299fdd64b0b2c9db6b558e" +istanbul-lib-instrument@^1.7.5, istanbul-lib-instrument@^1.8.0, istanbul-lib-instrument@^1.9.2: + version "1.9.2" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.9.2.tgz#84905bf47f7e0b401d6b840da7bad67086b4aab6" dependencies: babel-generator "^6.18.0" babel-template "^6.16.0" babel-traverse "^6.18.0" babel-types "^6.18.0" babylon "^6.18.0" - istanbul-lib-coverage "^1.1.1" + istanbul-lib-coverage "^1.1.2" semver "^5.3.0" -istanbul-lib-report@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.2.tgz#922be27c13b9511b979bd1587359f69798c1d425" +istanbul-lib-report@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.1.3.tgz#2df12188c0fa77990c0d2176d2d0ba3394188259" dependencies: - istanbul-lib-coverage "^1.1.1" + istanbul-lib-coverage "^1.1.2" mkdirp "^0.5.1" path-parse "^1.0.5" supports-color "^3.1.2" -istanbul-lib-source-maps@^1.2.1, istanbul-lib-source-maps@^1.2.2: - version "1.2.2" - resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.2.tgz#750578602435f28a0c04ee6d7d9e0f2960e62c1c" +istanbul-lib-source-maps@^1.2.1, istanbul-lib-source-maps@^1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.3.tgz#20fb54b14e14b3fb6edb6aca3571fd2143db44e6" dependencies: debug "^3.1.0" - istanbul-lib-coverage "^1.1.1" + istanbul-lib-coverage "^1.1.2" mkdirp "^0.5.1" rimraf "^2.6.1" source-map "^0.5.3" -istanbul-reports@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.3.tgz#3b9e1e8defb6d18b1d425da8e8b32c5a163f2d10" +istanbul-reports@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.1.4.tgz#5ccba5e22b7b5a5d91d5e0a830f89be334bf97bd" dependencies: handlebars "^4.0.3" @@ -5758,19 +5833,27 @@ items@2.x.x: version "2.1.1" resolved "https://registry.yarnpkg.com/items/-/items-2.1.1.tgz#8bd16d9c83b19529de5aea321acaada78364a198" +iterall@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.1.3.tgz#1cbbff96204056dde6656e2ed2e2226d0e6d72c9" + +iterall@^1.1.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/iterall/-/iterall-1.2.0.tgz#434e9f41f0b99911ab9c3d49d95f0e079176a2a2" + javascript-stringify@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/javascript-stringify/-/javascript-stringify-1.6.0.tgz#142d111f3a6e3dae8f4a9afd77d45855b5a9cce3" -jest-changed-files@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-22.1.0.tgz#586a6164b87255dbd541a8bab880d98f14c99b7d" +jest-changed-files@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-22.2.0.tgz#517610c4a8ca0925bdc88b0ca53bd678aa8d019e" dependencies: throat "^4.0.0" -jest-cli@^22.1.1: - version "22.1.1" - resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-22.1.1.tgz#fa101866fbce926d875dfe5b3565785dc7922b1d" +jest-cli@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-22.4.0.tgz#234d6175166e87ecab40c6e5a4f7b3f6a4cd4257" dependencies: ansi-escapes "^3.0.0" chalk "^2.0.1" @@ -5783,21 +5866,22 @@ jest-cli@^22.1.1: istanbul-lib-coverage "^1.1.1" istanbul-lib-instrument "^1.8.0" istanbul-lib-source-maps "^1.2.1" - jest-changed-files "^22.1.0" - jest-config "^22.1.1" - jest-environment-jsdom "^22.1.0" + jest-changed-files "^22.2.0" + jest-config "^22.4.0" + jest-environment-jsdom "^22.4.0" jest-get-type "^22.1.0" - jest-haste-map "^22.1.0" - jest-message-util "^22.1.0" + jest-haste-map "^22.4.0" + jest-message-util "^22.4.0" jest-regex-util "^22.1.0" jest-resolve-dependencies "^22.1.0" - jest-runner "^22.1.1" - jest-runtime "^22.1.1" - jest-snapshot "^22.1.0" - jest-util "^22.1.0" - jest-worker "^22.1.0" + jest-runner "^22.4.0" + jest-runtime "^22.4.0" + jest-snapshot "^22.4.0" + jest-util "^22.4.0" + jest-validate "^22.4.0" + jest-worker "^22.2.2" micromatch "^2.3.11" - node-notifier "^5.1.2" + node-notifier "^5.2.1" realpath-native "^1.0.0" rimraf "^2.5.4" slash "^1.0.0" @@ -5806,55 +5890,55 @@ jest-cli@^22.1.1: which "^1.2.12" yargs "^10.0.3" -jest-config@^22.1.1: - version "22.1.1" - resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-22.1.1.tgz#642ffc0c704ca66a598eae1f2a473d1f9096056d" +jest-config@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-22.4.0.tgz#34ab50ff52e68a3b0f2dd5df91bfd9b8cf2aa474" dependencies: chalk "^2.0.1" glob "^7.1.1" - jest-environment-jsdom "^22.1.0" - jest-environment-node "^22.1.0" + jest-environment-jsdom "^22.4.0" + jest-environment-node "^22.4.0" jest-get-type "^22.1.0" - jest-jasmine2 "^22.1.1" + jest-jasmine2 "^22.4.0" jest-regex-util "^22.1.0" - jest-resolve "^22.1.0" - jest-util "^22.1.0" - jest-validate "^22.1.0" - pretty-format "^22.1.0" + jest-resolve "^22.4.0" + jest-util "^22.4.0" + jest-validate "^22.4.0" + pretty-format "^22.4.0" -jest-diff@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.1.0.tgz#0fad9d96c87b453896bf939df3dc8aac6919ac38" +jest-diff@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-22.4.0.tgz#384c2b78519ca44ca126382df53f134289232525" dependencies: chalk "^2.0.1" diff "^3.2.0" jest-get-type "^22.1.0" - pretty-format "^22.1.0" + pretty-format "^22.4.0" jest-docblock@^21.0.0: version "21.2.0" resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-21.2.0.tgz#51529c3b30d5fd159da60c27ceedc195faf8d414" -jest-docblock@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-22.1.0.tgz#3fe5986d5444cbcb149746eb4b07c57c5a464dfd" +jest-docblock@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-22.4.0.tgz#dbf1877e2550070cfc4d9b07a55775a0483159b8" dependencies: detect-newline "^2.1.0" -jest-environment-jsdom@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-22.1.0.tgz#d0b83359a1dd4dc7faa9be27895da1859692b9e8" +jest-environment-jsdom@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-22.4.0.tgz#09df84a1faf1ca47096aafc89411a095378f628e" dependencies: - jest-mock "^22.1.0" - jest-util "^22.1.0" + jest-mock "^22.2.0" + jest-util "^22.4.0" jsdom "^11.5.1" -jest-environment-node@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-22.1.0.tgz#372d590c5229a349e882d9404808c4e99bd40f62" +jest-environment-node@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-22.4.0.tgz#b6d9458275053028d4b1658851c3475ab22dfb56" dependencies: - jest-mock "^22.1.0" - jest-util "^22.1.0" + jest-mock "^22.2.0" + jest-util "^22.4.0" jest-get-type@^21.2.0: version "21.2.0" @@ -5864,50 +5948,51 @@ jest-get-type@^22.1.0: version "22.1.0" resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-22.1.0.tgz#4e90af298ed6181edc85d2da500dbd2753e0d5a9" -jest-haste-map@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-22.1.0.tgz#1174c6ff393f9818ebf1163710d8868b5370da2a" +jest-haste-map@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-22.4.0.tgz#7a2cadb32ce1fe9352a57841437b000f1624f14d" dependencies: fb-watchman "^2.0.0" graceful-fs "^4.1.11" - jest-docblock "^22.1.0" - jest-worker "^22.1.0" + jest-docblock "^22.4.0" + jest-serializer "^22.4.0" + jest-worker "^22.2.2" micromatch "^2.3.11" sane "^2.0.0" -jest-jasmine2@^22.1.1: - version "22.1.1" - resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-22.1.1.tgz#990a13cd62803ae44bcb6e34909d3b0ebd2dcb13" +jest-jasmine2@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-22.4.0.tgz#1d9b607ede12a600ecadda2c8d89918d7d3c4d26" dependencies: callsites "^2.0.0" chalk "^2.0.1" co "^4.6.0" - expect "^22.1.0" + expect "^22.4.0" graceful-fs "^4.1.11" is-generator-fn "^1.0.0" - jest-diff "^22.1.0" - jest-matcher-utils "^22.1.0" - jest-message-util "^22.1.0" - jest-snapshot "^22.1.0" + jest-diff "^22.4.0" + jest-matcher-utils "^22.4.0" + jest-message-util "^22.4.0" + jest-snapshot "^22.4.0" source-map-support "^0.5.0" -jest-leak-detector@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-22.1.0.tgz#08376644cee07103da069baac19adb0299b772c2" +jest-leak-detector@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-22.4.0.tgz#64da77f05b001c96d2062226e079f89989c4aa2f" dependencies: - pretty-format "^22.1.0" + pretty-format "^22.4.0" -jest-matcher-utils@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.1.0.tgz#e164665b5d313636ac29f7f6fe9ef0a6ce04febc" +jest-matcher-utils@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-22.4.0.tgz#d55f5faf2270462736bdf7c7485ee931c9d4b6a1" dependencies: chalk "^2.0.1" jest-get-type "^22.1.0" - pretty-format "^22.1.0" + pretty-format "^22.4.0" -jest-message-util@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.1.0.tgz#51ba0794cb6e579bfc4e9adfac452f9f1a0293fc" +jest-message-util@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-22.4.0.tgz#e3d861df16d2fee60cb2bc8feac2188a42579642" dependencies: "@babel/code-frame" "^7.0.0-beta.35" chalk "^2.0.1" @@ -5915,9 +6000,9 @@ jest-message-util@^22.1.0: slash "^1.0.0" stack-utils "^1.0.1" -jest-mock@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-22.1.0.tgz#87ec21c0599325671c9a23ad0e05c86fb5879b61" +jest-mock@^22.2.0: + version "22.2.0" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-22.2.0.tgz#444b3f9488a7473adae09bc8a77294afded397a7" jest-regex-util@^22.1.0: version "22.1.0" @@ -5929,45 +6014,46 @@ jest-resolve-dependencies@^22.1.0: dependencies: jest-regex-util "^22.1.0" -jest-resolve@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-22.1.0.tgz#5f4307f48b93c1abdbeacc9ed80642ffcb246294" +jest-resolve@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-22.4.0.tgz#c3550280d77c47c2885809e7dc8e42560f0b3e71" dependencies: browser-resolve "^1.11.2" chalk "^2.0.1" -jest-runner@^22.1.1: - version "22.1.1" - resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-22.1.1.tgz#5486c9312cf24fe6f3a855bdff58009a34e7c5a8" +jest-runner@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-22.4.0.tgz#2509b82834ab4aa7e984ff464626397c556177a7" dependencies: exit "^0.1.2" - jest-config "^22.1.1" - jest-docblock "^22.1.0" - jest-haste-map "^22.1.0" - jest-jasmine2 "^22.1.1" - jest-leak-detector "^22.1.0" - jest-message-util "^22.1.0" - jest-runtime "^22.1.1" - jest-util "^22.1.0" - jest-worker "^22.1.0" + jest-config "^22.4.0" + jest-docblock "^22.4.0" + jest-haste-map "^22.4.0" + jest-jasmine2 "^22.4.0" + jest-leak-detector "^22.4.0" + jest-message-util "^22.4.0" + jest-runtime "^22.4.0" + jest-util "^22.4.0" + jest-worker "^22.2.2" throat "^4.0.0" -jest-runtime@^22.1.1: - version "22.1.1" - resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-22.1.1.tgz#2b765fc750a0cda28806419007e220df08dfe505" +jest-runtime@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-22.4.0.tgz#a4e3e3709a2289725790ed51ca41526a5700ddc4" dependencies: babel-core "^6.0.0" - babel-jest "^22.1.0" + babel-jest "^22.4.0" babel-plugin-istanbul "^4.1.5" chalk "^2.0.1" convert-source-map "^1.4.0" exit "^0.1.2" graceful-fs "^4.1.11" - jest-config "^22.1.1" - jest-haste-map "^22.1.0" + jest-config "^22.4.0" + jest-haste-map "^22.4.0" jest-regex-util "^22.1.0" - jest-resolve "^22.1.0" - jest-util "^22.1.0" + jest-resolve "^22.4.0" + jest-util "^22.4.0" + jest-validate "^22.4.0" json-stable-stringify "^1.0.1" micromatch "^2.3.11" realpath-native "^1.0.0" @@ -5976,27 +6062,30 @@ jest-runtime@^22.1.1: write-file-atomic "^2.1.0" yargs "^10.0.3" -jest-snapshot@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-22.1.0.tgz#4a9b27a1974cff0c48ff0f86bbbefd1a6cc3c5f5" +jest-serializer@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-22.4.0.tgz#b5d145b98c4b0d2c20ab686609adbb81fe23b566" + +jest-snapshot@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-22.4.0.tgz#03d3ce63f8fa7352388afc6a3c8b5ccc3a180ed7" dependencies: chalk "^2.0.1" - jest-diff "^22.1.0" - jest-matcher-utils "^22.1.0" + jest-diff "^22.4.0" + jest-matcher-utils "^22.4.0" mkdirp "^0.5.1" natural-compare "^1.4.0" - pretty-format "^22.1.0" + pretty-format "^22.4.0" -jest-util@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-22.1.0.tgz#2ce0ead08a00a38383c308d0bd3431a9f159cbaa" +jest-util@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-22.4.0.tgz#ebdc147548d613c5faf7c7534051f59740c98ada" dependencies: callsites "^2.0.0" chalk "^2.0.1" graceful-fs "^4.1.11" is-ci "^1.0.10" - jest-message-util "^22.1.0" - jest-validate "^22.1.0" + jest-message-util "^22.4.0" mkdirp "^0.5.1" jest-validate@^21.1.0: @@ -6008,26 +6097,28 @@ jest-validate@^21.1.0: leven "^2.1.0" pretty-format "^21.2.1" -jest-validate@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-22.1.0.tgz#69d570687029e2349ca5779e209bdd360898746c" +jest-validate@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-22.4.0.tgz#8bcbeaf7ac6893c90446daf0d9382b6de0651799" dependencies: chalk "^2.0.1" + jest-config "^22.4.0" jest-get-type "^22.1.0" leven "^2.1.0" - pretty-format "^22.1.0" + pretty-format "^22.4.0" -jest-worker@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-22.1.0.tgz#0987832fe58fbdc205357f4c19b992446368cafb" +jest-worker@^22.2.2: + version "22.2.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-22.2.2.tgz#c1f5dc39976884b81f68ec50cb8532b2cbab3390" dependencies: merge-stream "^1.0.1" jest@^22.1.1: - version "22.1.1" - resolved "https://registry.yarnpkg.com/jest/-/jest-22.1.1.tgz#96bf8cc65059e2fdc84c5b4de4e4a736d799a342" + version "22.4.0" + resolved "https://registry.yarnpkg.com/jest/-/jest-22.4.0.tgz#476e2c08c6c2a6dbb5cfec520b8bf1cd4c99afd7" dependencies: - jest-cli "^22.1.1" + import-local "^1.0.0" + jest-cli "^22.4.0" jmespath@0.15.0: version "0.15.0" @@ -6037,7 +6128,7 @@ joi-browser@^10.0.6: version "10.6.1" resolved "https://registry.yarnpkg.com/joi-browser/-/joi-browser-10.6.1.tgz#1cfc1a244c9242327842c24354d8ead1c2fe3571" -joi@^10.0.6, joi@^10.4.1, joi@^10.6.0: +joi@^10.0.6, joi@^10.6.0: version "10.6.0" resolved "https://registry.yarnpkg.com/joi/-/joi-10.6.0.tgz#52587f02d52b8b75cdb0c74f0b164a191a0e1fc2" dependencies: @@ -6046,13 +6137,13 @@ joi@^10.0.6, joi@^10.4.1, joi@^10.6.0: items "2.x.x" topo "2.x.x" -joi@^11.0.2: - version "11.4.0" - resolved "https://registry.yarnpkg.com/joi/-/joi-11.4.0.tgz#f674897537b625e9ac3d0b7e1604c828ad913ccb" +joi@^13.1.0: + version "13.1.2" + resolved "https://registry.yarnpkg.com/joi/-/joi-13.1.2.tgz#b2db260323cc7f919fafa51e09e2275bd089a97e" dependencies: - hoek "4.x.x" + hoek "5.x.x" isemail "3.x.x" - topo "2.x.x" + topo "3.x.x" joi@^6.10.1: version "6.10.1" @@ -6063,11 +6154,7 @@ joi@^6.10.1: moment "2.x.x" topo "1.x.x" -js-base64@^2.1.8: - version "2.4.0" - resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.0.tgz#9e566fee624751a1d720c966cd6226d29d4025aa" - -js-base64@^2.1.9: +js-base64@^2.1.8, js-base64@^2.1.9: version "2.4.3" resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.4.3.tgz#2e545ec2b0f2957f41356510205214e98fad6582" @@ -6094,38 +6181,44 @@ jsbn@~0.1.0: resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" jsdom@^11.5.1: - version "11.5.1" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.5.1.tgz#5df753b8d0bca20142ce21f4f6c039f99a992929" + version "11.6.2" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-11.6.2.tgz#25d1ef332d48adf77fc5221fe2619967923f16bb" dependencies: - abab "^1.0.3" - acorn "^5.1.2" - acorn-globals "^4.0.0" + abab "^1.0.4" + acorn "^5.3.0" + acorn-globals "^4.1.0" array-equal "^1.0.0" browser-process-hrtime "^0.1.2" - content-type-parser "^1.0.1" + content-type-parser "^1.0.2" cssom ">= 0.3.2 < 0.4.0" cssstyle ">= 0.2.37 < 0.3.0" domexception "^1.0.0" escodegen "^1.9.0" - html-encoding-sniffer "^1.0.1" + html-encoding-sniffer "^1.0.2" left-pad "^1.2.0" nwmatcher "^1.4.3" - parse5 "^3.0.2" - pn "^1.0.0" + parse5 "4.0.0" + pn "^1.1.0" request "^2.83.0" - request-promise-native "^1.0.3" - sax "^1.2.1" - symbol-tree "^3.2.1" + request-promise-native "^1.0.5" + sax "^1.2.4" + symbol-tree "^3.2.2" tough-cookie "^2.3.3" + w3c-hr-time "^1.0.1" webidl-conversions "^4.0.2" - whatwg-encoding "^1.0.1" - whatwg-url "^6.3.0" - xml-name-validator "^2.0.1" + whatwg-encoding "^1.0.3" + whatwg-url "^6.4.0" + ws "^4.0.0" + xml-name-validator "^3.0.0" jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" +jsesc@^2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.1.tgz#e421a2a8e20d6b0819df28908f782526b96dd1fe" + jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" @@ -6259,7 +6352,7 @@ jstransform@~11.0.0: object-assign "^2.0.0" source-map "^0.4.2" -jsx-ast-utils@^2.0.0: +jsx-ast-utils@^2.0.0, jsx-ast-utils@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz#e801b1b39985e20fffc87b40e3748080e2dcac7f" dependencies: @@ -6308,7 +6401,7 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" -kind-of@^5.0.0, kind-of@^5.0.2: +kind-of@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" @@ -6345,16 +6438,16 @@ left-pad@^1.2.0: resolved "https://registry.yarnpkg.com/left-pad/-/left-pad-1.2.0.tgz#d30a73c6b8201d8f7d8e7956ba9616087a68e0ee" lerna@^2.5.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/lerna/-/lerna-2.5.1.tgz#d07099bd3051ee799f98c753328bd69e96c6fab8" + version "2.9.0" + resolved "https://registry.yarnpkg.com/lerna/-/lerna-2.9.0.tgz#303f70bc50b1c4541bdcf54eda13c36fe54401f3" dependencies: async "^1.5.0" chalk "^2.1.0" cmd-shim "^2.0.2" columnify "^1.5.4" command-join "^2.0.0" - conventional-changelog-cli "^1.3.2" - conventional-recommended-bump "^1.0.1" + conventional-changelog-cli "^1.3.13" + conventional-recommended-bump "^1.2.1" dedent "^0.7.0" execa "^0.8.0" find-up "^2.1.0" @@ -6367,7 +6460,7 @@ lerna@^2.5.1: hosted-git-info "^2.5.0" inquirer "^3.2.2" is-ci "^1.0.10" - load-json-file "^3.0.0" + load-json-file "^4.0.0" lodash "^4.17.4" minimatch "^3.0.4" npmlog "^4.1.2" @@ -6375,11 +6468,12 @@ lerna@^2.5.1: package-json "^4.0.1" path-exists "^3.0.0" read-cmd-shim "^1.0.1" - read-pkg "^2.0.0" + read-pkg "^3.0.0" rimraf "^2.6.1" safe-buffer "^5.1.1" semver "^5.4.1" signal-exit "^3.0.2" + slash "^1.0.0" strong-log-transformer "^1.0.6" temp-write "^3.3.0" write-file-atomic "^2.3.0" @@ -6410,10 +6504,10 @@ level-iterator-stream@~2.0.0: xtend "^4.0.0" level-packager@^2.0.2: - version "2.1.0" - resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-2.1.0.tgz#d81d81c5cb6d44e87ce2d71baca35eb945cf4d45" + version "2.1.1" + resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-2.1.1.tgz#10b653decb67b0a09c4e961ae84f196edaad205a" dependencies: - encoding-down "~3.0.0" + encoding-down "~4.0.0" levelup "^2.0.0" level-write-stream@1.0.0: @@ -6439,7 +6533,7 @@ leveldown@2.1.1, leveldown@^2.1.1: nan "~2.8.0" prebuild-install "^2.1.0" -levelup@2.0.1, levelup@^2.0.0: +levelup@2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/levelup/-/levelup-2.0.1.tgz#3dc91b3e632d37c9e546239c864118b004c9f860" dependencies: @@ -6448,6 +6542,15 @@ levelup@2.0.1, levelup@^2.0.0: level-iterator-stream "~2.0.0" xtend "~4.0.0" +levelup@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-2.0.2.tgz#83dd22ffd5ee14482143c37cddfb8457854d3727" + dependencies: + deferred-leveldown "~3.0.0" + level-errors "~1.1.0" + level-iterator-stream "~2.0.0" + xtend "~4.0.0" + leven@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-2.1.0.tgz#c2e7a9f772094dee9d34202ae8acce4687875580" @@ -6468,12 +6571,18 @@ lie@3.0.4: inline-process-browser "^1.0.0" unreachable-branch-transform "^0.3.0" -lie@3.1.1, lie@^3.1.0: +lie@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e" dependencies: immediate "~3.0.5" +lie@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lie/-/lie-3.2.0.tgz#4f13f2f8bbb027d383db338c43043545791aa8dc" + dependencies: + immediate "~3.0.5" + lint-staged@^4.1.3: version "4.3.0" resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-4.3.0.tgz#ed0779ad9a42c0dc62bb3244e522870b41125879" @@ -6495,13 +6604,13 @@ lint-staged@^4.1.3: stringify-object "^3.2.0" lint-staged@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-6.0.0.tgz#7ab7d345f2fe302ff196f1de6a005594ace03210" + version "6.1.1" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-6.1.1.tgz#cd08c4d9b8ccc2d37198d1c47ce77d22be6cf324" dependencies: app-root-path "^2.0.0" chalk "^2.1.0" commander "^2.11.0" - cosmiconfig "^3.1.0" + cosmiconfig "^4.0.0" debug "^3.1.0" dedent "^0.7.0" execa "^0.8.0" @@ -6516,7 +6625,7 @@ lint-staged@^6.0.0: p-map "^1.1.1" path-is-inside "^1.0.2" pify "^3.0.0" - staged-git-files "0.0.4" + staged-git-files "1.0.0" stringify-object "^3.2.0" listify@^1.0.0: @@ -6624,15 +6733,6 @@ load-json-file@^2.0.0: pify "^2.0.0" strip-bom "^3.0.0" -load-json-file@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-3.0.0.tgz#7eb3735d983a7ed2262ade4ff769af5369c5c440" - dependencies: - graceful-fs "^4.1.2" - parse-json "^3.0.0" - pify "^2.0.0" - strip-bom "^3.0.0" - load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -6678,11 +6778,7 @@ lodash-es@4.13.1: version "4.13.1" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.13.1.tgz#3daa36f23f09ede092a6f88833ffde08f7b8593c" -lodash-es@^4.17.3, lodash-es@^4.2.0, lodash-es@^4.2.1: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.4.tgz#dcc1d7552e150a0640073ba9cb31d70f032950e7" - -lodash-es@^4.17.5: +lodash-es@^4.17.3, lodash-es@^4.17.5, lodash-es@^4.2.1: version "4.17.5" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.5.tgz#9fc6e737b1c4d151d8f9cae2247305d552ce748f" @@ -6739,8 +6835,8 @@ lodash.memoize@^4.1.2: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" lodash.mergewith@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55" + version "4.6.1" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.1.tgz#639057e726c3afbdb3e7d42741caa8d6e4335927" lodash.once@^4.0.0: version "4.1.1" @@ -6779,11 +6875,7 @@ lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" -lodash@^4, lodash@^4.0.0, lodash@^4.1.0, lodash@^4.13.1, lodash@^4.15.0, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.6.1, lodash@~4.17.4: - version "4.17.4" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - -lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.5, lodash@^4.3.0: +lodash@^4, lodash@^4.0.0, lodash@^4.1.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.2, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.0, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.6.1, lodash@~4.17.4: version "4.17.5" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.5.tgz#99a92d65c0272debe8c96b6057bc8fbfa3bed511" @@ -6793,13 +6885,7 @@ log-symbols@^1.0.2: dependencies: chalk "^1.0.0" -log-symbols@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.1.0.tgz#f35fa60e278832b538dc4dddcbb478a45d3e3be6" - dependencies: - chalk "^2.0.1" - -log-symbols@^2.1.0: +log-symbols@^2.0.0, log-symbols@^2.1.0: version "2.2.0" resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-2.2.0.tgz#5740e1c5d6f0dfda4ad9323b5332107ef6b4c40a" dependencies: @@ -6871,8 +6957,8 @@ magic-string@^0.22.4: vlq "^0.2.1" make-dir@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.1.0.tgz#19b4369fe48c116f53c2af95ad102c0e39e85d51" + version "1.2.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.2.0.tgz#6d6a49eead4aae296c53bbf3a1a008bd6c89469b" dependencies: pify "^3.0.0" @@ -7047,18 +7133,18 @@ micromatch@^2.1.5, micromatch@^2.3.11: regex-cache "^0.4.2" micromatch@^3.1.4: - version "3.1.5" - resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.5.tgz#d05e168c206472dfbca985bfef4f57797b4cd4ba" + version "3.1.6" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.6.tgz#8d7c043b48156f408ca07a4715182b79b99420bf" dependencies: arr-diff "^4.0.0" array-unique "^0.3.2" - braces "^2.3.0" - define-property "^1.0.0" - extend-shallow "^2.0.1" - extglob "^2.0.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" fragment-cache "^0.2.1" - kind-of "^6.0.0" - nanomatch "^1.2.5" + kind-of "^6.0.2" + nanomatch "^1.2.9" object.pick "^1.3.0" regex-not "^1.0.0" snapdragon "^0.8.1" @@ -7071,25 +7157,11 @@ miller-rabin@^4.0.0: bn.js "^4.0.0" brorand "^1.0.1" -"mime-db@>= 1.30.0 < 2": - version "1.32.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.32.0.tgz#485b3848b01a3cda5f968b4882c0771e58e09414" - -mime-db@~1.30.0: - version "1.30.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" - -mime-db@~1.33.0: +"mime-db@>= 1.33.0 < 2", mime-db@~1.33.0: version "1.33.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.33.0.tgz#a3492050a5cb9b63450541e39d9788d2272783db" -mime-types@^2.1.12, mime-types@~2.1.15, mime-types@~2.1.16, mime-types@~2.1.17, mime-types@~2.1.7: - version "2.1.17" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" - dependencies: - mime-db "~1.30.0" - -mime-types@~2.1.18: +mime-types@^2.1.12, mime-types@~2.1.16, mime-types@~2.1.17, mime-types@~2.1.18, mime-types@~2.1.7: version "2.1.18" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.18.tgz#6f323f60a83d11146f831ff11fd66e2fe5503bb8" dependencies: @@ -7107,6 +7179,10 @@ mimic-fn@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" +mimic-response@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.0.tgz#df3d3652a73fded6b9b0b24146e6fd052353458e" + min-document@^2.19.0: version "2.19.0" resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" @@ -7160,9 +7236,9 @@ minimist@~0.0.1: version "0.0.10" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" -mississippi@^1.3.0: - version "1.3.1" - resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-1.3.1.tgz#2a8bb465e86550ac8b36a7b6f45599171d78671e" +mississippi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-2.0.0.tgz#3442a508fafc28500486feea99409676e4ee5a6f" dependencies: concat-stream "^1.5.0" duplexify "^3.4.2" @@ -7170,7 +7246,7 @@ mississippi@^1.3.0: flush-write-stream "^1.0.0" from2 "^2.1.0" parallel-transform "^1.1.0" - pump "^1.0.0" + pump "^2.0.1" pumpify "^1.3.3" stream-each "^1.1.0" through2 "^2.0.0" @@ -7279,17 +7355,18 @@ nan@^2.3.0, nan@^2.3.2, nan@~2.8.0: version "2.8.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" -nanomatch@^1.2.5: - version "1.2.7" - resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.7.tgz#53cd4aa109ff68b7f869591fdc9d10daeeea3e79" +nanomatch@^1.2.9: + version "1.2.9" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.9.tgz#879f7150cb2dab7a471259066c104eee6e0fa7c2" dependencies: arr-diff "^4.0.0" array-unique "^0.3.2" - define-property "^1.0.0" - extend-shallow "^2.0.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" fragment-cache "^0.2.1" - is-odd "^1.0.0" - kind-of "^5.0.2" + is-odd "^2.0.0" + is-windows "^1.0.2" + kind-of "^6.0.2" object.pick "^1.3.0" regex-not "^1.0.0" snapdragon "^0.8.1" @@ -7322,12 +7399,13 @@ ncp@1.0.x: resolved "https://registry.yarnpkg.com/ncp/-/ncp-1.0.1.tgz#d15367e5cb87432ba117d2bf80fdf45aecfb4246" nearley@^2.7.10: - version "2.11.0" - resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.11.0.tgz#5e626c79a6cd2f6ab9e7e5d5805e7668967757ae" + version "2.11.1" + resolved "https://registry.yarnpkg.com/nearley/-/nearley-2.11.1.tgz#a9c0a5fa942998db5ad18b14fbc8e9fc49672f16" dependencies: nomnom "~1.6.2" railroad-diagrams "^1.0.0" - randexp "^0.4.2" + randexp "0.4.6" + semver "^5.4.1" negotiator@0.6.1: version "0.6.1" @@ -7347,9 +7425,9 @@ nocache@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/nocache/-/nocache-2.0.0.tgz#202b48021a0c4cbde2df80de15a17443c8b43980" -node-abi@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.1.2.tgz#4da6caceb6685fcd31e7dd1994ef6bb7d0a9c0b2" +node-abi@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/node-abi/-/node-abi-2.2.0.tgz#e802ac7a2408e2c0593fb3176ffdf8a99a9b4dec" dependencies: semver "^5.4.1" @@ -7435,7 +7513,7 @@ node-mocks-http@^1.6.6: range-parser "^1.2.0" type-is "^1.6.14" -node-notifier@^5.1.2: +node-notifier@^5.2.1: version "5.2.1" resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-5.2.1.tgz#fa313dd08f5517db0e2502e5758d664ac69f9dea" dependencies: @@ -7498,6 +7576,12 @@ node-sass@^4.5.3: stdout-stream "^1.4.0" "true-case-path" "^1.0.2" +nodemailer-ses-transport@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/nodemailer-ses-transport/-/nodemailer-ses-transport-1.5.1.tgz#dc0598c1bf53e8652e632e8f31692ce022d7dea9" + dependencies: + aws-sdk "^2.2.36" + nodemailer@^4.0.1, nodemailer@^4.4.2: version "4.4.2" resolved "https://registry.yarnpkg.com/nodemailer/-/nodemailer-4.4.2.tgz#f215fb88e8a1052f9f93083909e116d2b79fc8de" @@ -7571,8 +7655,8 @@ normalize-url@^1.4.0: sort-keys "^1.0.0" npm-path@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.3.tgz#15cff4e1c89a38da77f56f6055b24f975dfb2bbe" + version "2.0.4" + resolved "https://registry.yarnpkg.com/npm-path/-/npm-path-2.0.4.tgz#c641347a5ff9d6a09e4d9bce5580c4f505278e64" dependencies: which "^1.2.10" @@ -7664,7 +7748,7 @@ object-is@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6" -object-keys@^1.0.10, object-keys@^1.0.11, object-keys@^1.0.6, object-keys@^1.0.8: +object-keys@^1.0.11, object-keys@^1.0.6, object-keys@^1.0.8: version "1.0.11" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" @@ -7674,15 +7758,7 @@ object-visit@^1.0.0: dependencies: isobject "^3.0.0" -object.assign@^4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc" - dependencies: - define-properties "^1.1.2" - function-bind "^1.1.0" - object-keys "^1.0.10" - -object.assign@^4.1.0: +object.assign@^4.0.4, object.assign@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da" dependencies: @@ -7857,8 +7933,8 @@ os-tmpdir@^1.0.0, os-tmpdir@^1.0.1, os-tmpdir@~1.0.2: resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" osenv@0, osenv@^0.1.4: - version "0.1.4" - resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.0" @@ -7988,7 +8064,11 @@ parse-passwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" -parse5@^3.0.1, parse5@^3.0.2: +parse5@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608" + +parse5@^3.0.1: version "3.0.3" resolved "https://registry.yarnpkg.com/parse5/-/parse5-3.0.3.tgz#042f792ffdd36851551cf4e9e066b3874ab45b5c" dependencies: @@ -8117,7 +8197,7 @@ performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" -pify@^2.0.0, pify@^2.2.0, pify@^2.3.0: +pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" @@ -8155,15 +8235,15 @@ pkginfo@0.x.x: version "0.4.1" resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" -platform@1.3.4: - version "1.3.4" - resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.4.tgz#6f0fb17edaaa48f21442b3a975c063130f1c3ebd" +platform@1.3.5: + version "1.3.5" + resolved "https://registry.yarnpkg.com/platform/-/platform-1.3.5.tgz#fb6958c696e07e2918d2eeda0f0bc9448d733444" pluralize@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-7.0.0.tgz#298b89df8b93b0221dbf421ad2b1b1ea23fc6777" -pn@^1.0.0: +pn@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" @@ -8332,33 +8412,27 @@ postcss-minify-selectors@^2.0.4: postcss "^5.0.14" postcss-selector-parser "^2.0.0" -postcss-modules-extract-imports@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz#b614c9720be6816eaee35fb3a5faa1dba6a05ddb" - dependencies: - postcss "^6.0.1" - postcss-modules-extract-imports@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" dependencies: postcss "^6.0.1" -postcss-modules-local-by-default@^1.0.1, postcss-modules-local-by-default@^1.2.0: +postcss-modules-local-by-default@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" dependencies: css-selector-tokenizer "^0.7.0" postcss "^6.0.1" -postcss-modules-scope@^1.0.0, postcss-modules-scope@^1.1.0: +postcss-modules-scope@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" dependencies: css-selector-tokenizer "^0.7.0" postcss "^6.0.1" -postcss-modules-values@^1.1.0, postcss-modules-values@^1.3.0: +postcss-modules-values@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" dependencies: @@ -8435,10 +8509,10 @@ postcss-sass@^0.2.0: postcss "^6.0.6" postcss-scss@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-1.0.2.tgz#ff45cf3354b879ee89a4eb68680f46ac9bb14f94" + version "1.0.3" + resolved "https://registry.yarnpkg.com/postcss-scss/-/postcss-scss-1.0.3.tgz#4c00ab440fc1c994134e3d4e600c23341af6cd27" dependencies: - postcss "^6.0.3" + postcss "^6.0.15" postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2: version "2.2.3" @@ -8501,157 +8575,149 @@ postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0 source-map "^0.5.6" supports-color "^3.2.3" -postcss@^6.0.1: - version "6.0.18" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.18.tgz#370f5f44d47f3a205f0eb2f6262bbf202df2a80e" +postcss@^6.0.1, postcss@^6.0.11, postcss@^6.0.13, postcss@^6.0.14, postcss@^6.0.15, postcss@^6.0.17, postcss@^6.0.6, postcss@^6.0.8: + version "6.0.19" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.19.tgz#76a78386f670b9d9494a655bf23ac012effd1555" dependencies: chalk "^2.3.1" source-map "^0.6.1" supports-color "^5.2.0" -postcss@^6.0.11, postcss@^6.0.13, postcss@^6.0.14, postcss@^6.0.3, postcss@^6.0.6, postcss@^6.0.8: - version "6.0.14" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.14.tgz#5534c72114739e75d0afcf017db853099f562885" - dependencies: - chalk "^2.3.0" - source-map "^0.6.1" - supports-color "^4.4.0" - -pouchdb-abstract-mapreduce@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-abstract-mapreduce/-/pouchdb-abstract-mapreduce-6.4.1.tgz#b8ba3f9ff661ddb2b3e1cc1bd47c98142be1a4fe" +pouchdb-abstract-mapreduce@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-abstract-mapreduce/-/pouchdb-abstract-mapreduce-6.4.3.tgz#0310053812d16ff9545a3db43f5e38a67a0133d7" dependencies: - pouchdb-binary-utils "6.4.1" - pouchdb-collate "6.4.1" - pouchdb-collections "6.4.1" - pouchdb-mapreduce-utils "6.4.1" - pouchdb-md5 "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-binary-utils "6.4.3" + pouchdb-collate "6.4.3" + pouchdb-collections "6.4.3" + pouchdb-mapreduce-utils "6.4.3" + pouchdb-md5 "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-utils "6.4.3" pouchdb-adapter-http@^6.2.0: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-adapter-http/-/pouchdb-adapter-http-6.4.1.tgz#bb8c30f7e536f312043ad074d00379ef87bdf6ab" + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-adapter-http/-/pouchdb-adapter-http-6.4.3.tgz#0bc713e4d5f5b7bbaa4dc509d417d38b7733a71f" dependencies: argsarray "0.0.1" - pouchdb-ajax "6.4.1" - pouchdb-binary-utils "6.4.1" - pouchdb-errors "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-ajax "6.4.3" + pouchdb-binary-utils "6.4.3" + pouchdb-errors "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-utils "6.4.3" -pouchdb-adapter-leveldb-core@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-adapter-leveldb-core/-/pouchdb-adapter-leveldb-core-6.4.1.tgz#ccb825a01337c31a815433ba7d9f3c445ef86ada" +pouchdb-adapter-leveldb-core@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-adapter-leveldb-core/-/pouchdb-adapter-leveldb-core-6.4.3.tgz#0b623fc12e63acbf5606508ba2008e501803076a" dependencies: argsarray "0.0.1" buffer-from "0.1.1" double-ended-queue "2.1.0-0" levelup "2.0.1" - pouchdb-adapter-utils "6.4.1" - pouchdb-binary-utils "6.4.1" - pouchdb-collections "6.4.1" - pouchdb-errors "6.4.1" - pouchdb-json "6.4.1" - pouchdb-md5 "6.4.1" - pouchdb-merge "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-utils "6.4.1" - sublevel-pouchdb "6.4.1" + pouchdb-adapter-utils "6.4.3" + pouchdb-binary-utils "6.4.3" + pouchdb-collections "6.4.3" + pouchdb-errors "6.4.3" + pouchdb-json "6.4.3" + pouchdb-md5 "6.4.3" + pouchdb-merge "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-utils "6.4.3" + sublevel-pouchdb "6.4.3" through2 "2.0.3" pouchdb-adapter-leveldb@^6.1.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-adapter-leveldb/-/pouchdb-adapter-leveldb-6.4.1.tgz#ca3f910bc01b1fc73bc1be5ba704cd5832f8b75e" + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-adapter-leveldb/-/pouchdb-adapter-leveldb-6.4.3.tgz#0fe0f69b090df849c15b54e09a0e20db13cfa581" dependencies: level "2.1.1" level-write-stream "1.0.0" leveldown "2.1.1" - pouchdb-adapter-leveldb-core "6.4.1" - pouchdb-merge "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-adapter-leveldb-core "6.4.3" + pouchdb-merge "6.4.3" + pouchdb-utils "6.4.3" through2 "2.0.3" pouchdb-adapter-memory@^6.1.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-adapter-memory/-/pouchdb-adapter-memory-6.4.1.tgz#d117500c54510855e2ea1e4e4fbc8d0b61fa3a83" + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-adapter-memory/-/pouchdb-adapter-memory-6.4.3.tgz#06edb687be9d063b27e9b58ca30ea1a08a9b94f4" dependencies: memdown "1.2.4" - pouchdb-adapter-leveldb-core "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-adapter-leveldb-core "6.4.3" + pouchdb-utils "6.4.3" -pouchdb-adapter-utils@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-adapter-utils/-/pouchdb-adapter-utils-6.4.1.tgz#cf6982bea528fb88fa01c9a5a31ab21d6babe5e5" +pouchdb-adapter-utils@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-adapter-utils/-/pouchdb-adapter-utils-6.4.3.tgz#384bb1bcd37dc7d473016eb450cec53d665bcae4" dependencies: - pouchdb-binary-utils "6.4.1" - pouchdb-collections "6.4.1" - pouchdb-errors "6.4.1" - pouchdb-md5 "6.4.1" - pouchdb-merge "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-binary-utils "6.4.3" + pouchdb-collections "6.4.3" + pouchdb-errors "6.4.3" + pouchdb-md5 "6.4.3" + pouchdb-merge "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-utils "6.4.3" -pouchdb-ajax@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-ajax/-/pouchdb-ajax-6.4.1.tgz#1ce0216a6affdec55e0b7cb16f3f1b5996340ec2" +pouchdb-ajax@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-ajax/-/pouchdb-ajax-6.4.3.tgz#642aea957925cb9fcd6493d2f39820c34bca3e88" dependencies: buffer-from "0.1.1" - pouchdb-binary-utils "6.4.1" - pouchdb-errors "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-utils "6.4.1" - request "2.80.0" + pouchdb-binary-utils "6.4.3" + pouchdb-errors "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-utils "6.4.3" + request "2.83.0" -pouchdb-binary-utils@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-binary-utils/-/pouchdb-binary-utils-6.4.1.tgz#fc2f5cdb6d4d36a9e666409d930e590f74787df0" +pouchdb-binary-utils@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-binary-utils/-/pouchdb-binary-utils-6.4.3.tgz#ba6d9b9d289a359d47b53c1ec017fd9715a777a9" dependencies: buffer-from "0.1.1" -pouchdb-changes-filter@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-changes-filter/-/pouchdb-changes-filter-6.4.1.tgz#6ab66bc044681a49fee18d158a0cd114f7e75f37" +pouchdb-changes-filter@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-changes-filter/-/pouchdb-changes-filter-6.4.3.tgz#01fcf9dbc9d742fe5060624bb39bc459a3d11a1a" dependencies: - pouchdb-errors "6.4.1" - pouchdb-selector-core "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-errors "6.4.3" + pouchdb-selector-core "6.4.3" + pouchdb-utils "6.4.3" -pouchdb-collate@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-collate/-/pouchdb-collate-6.4.1.tgz#b0ee89c7964cb965170af22de9ad78a58ef8d0c3" +pouchdb-collate@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-collate/-/pouchdb-collate-6.4.3.tgz#55a77a1a3e1c2cf86fe4d02aea171e10c2a3f944" pouchdb-collate@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/pouchdb-collate/-/pouchdb-collate-1.2.0.tgz#cae3b830fca124b7f97d23046e4faa311ec3828c" -pouchdb-collections@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-collections/-/pouchdb-collections-6.4.1.tgz#d7407255a6058664cd8fa0a076c53e5e0eff4ef2" +pouchdb-collections@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-collections/-/pouchdb-collections-6.4.3.tgz#2b70ca3143134c361dba6e466518b4f4d8e92ff4" pouchdb-core@^6.1.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-core/-/pouchdb-core-6.4.1.tgz#24cac5c6592fc4cea42c07314e0538a39c3d8fe4" + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-core/-/pouchdb-core-6.4.3.tgz#8a25d60f95b6861191228327e56c04a661389426" dependencies: argsarray "0.0.1" inherits "2.0.3" - pouchdb-changes-filter "6.4.1" - pouchdb-collections "6.4.1" - pouchdb-debug "6.4.1" - pouchdb-errors "6.4.1" - pouchdb-merge "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-utils "6.4.1" - -pouchdb-debug@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-debug/-/pouchdb-debug-6.4.1.tgz#dc6c89b3d0d83ef008fa0792e55c07d399b79d61" + pouchdb-changes-filter "6.4.3" + pouchdb-collections "6.4.3" + pouchdb-debug "6.4.3" + pouchdb-errors "6.4.3" + pouchdb-merge "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-utils "6.4.3" + +pouchdb-debug@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-debug/-/pouchdb-debug-6.4.3.tgz#d5ee0d0f638c455ef947fe6658030db1480c72c0" dependencies: - debug "3.0.1" + debug "3.1.0" -pouchdb-errors@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-errors/-/pouchdb-errors-6.4.1.tgz#27090149e5c16adfc8bebf774fa2ec40be11956d" +pouchdb-errors@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-errors/-/pouchdb-errors-6.4.3.tgz#9fa4a13f64ee50c8d593e3235b18b1458977f8d1" dependencies: inherits "2.0.3" @@ -8674,41 +8740,41 @@ pouchdb-find@^0.10.3: spark-md5 "2.0.2" pouchdb-find@^6.3.4: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-find/-/pouchdb-find-6.4.1.tgz#e2a290665abb645984ad6916a6a984a1cc2ddf3e" + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-find/-/pouchdb-find-6.4.3.tgz#1d0128306071434a5e397bb14ce69c831356c95e" dependencies: - pouchdb-abstract-mapreduce "6.4.1" - pouchdb-collate "6.4.1" - pouchdb-md5 "6.4.1" - pouchdb-promise "6.4.1" - pouchdb-selector-core "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-abstract-mapreduce "6.4.3" + pouchdb-collate "6.4.3" + pouchdb-md5 "6.4.3" + pouchdb-promise "6.4.3" + pouchdb-selector-core "6.4.3" + pouchdb-utils "6.4.3" -pouchdb-json@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-json/-/pouchdb-json-6.4.1.tgz#02d2d77bf7bc13b7da35687a762b0a55a1055951" +pouchdb-json@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-json/-/pouchdb-json-6.4.3.tgz#a1702c8eb9d656f6566920aaec9fb3e7e1265132" dependencies: vuvuzela "1.0.3" -pouchdb-mapreduce-utils@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-mapreduce-utils/-/pouchdb-mapreduce-utils-6.4.1.tgz#abddc1ef9344c7e650a697d7b609bcbc8581c9e5" +pouchdb-mapreduce-utils@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-mapreduce-utils/-/pouchdb-mapreduce-utils-6.4.3.tgz#1245e1ca4d3f216d336030c669dd97d6597442e4" dependencies: argsarray "0.0.1" inherits "2.0.3" - pouchdb-collections "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-collections "6.4.3" + pouchdb-utils "6.4.3" -pouchdb-md5@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-md5/-/pouchdb-md5-6.4.1.tgz#76cb65821a2a608fecdff64dfeaa18dcfd058bf0" +pouchdb-md5@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-md5/-/pouchdb-md5-6.4.3.tgz#d414315366e4bb428fb6048a25655b1eca591797" dependencies: - pouchdb-binary-utils "6.4.1" + pouchdb-binary-utils "6.4.3" spark-md5 "3.0.0" -pouchdb-merge@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-merge/-/pouchdb-merge-6.4.1.tgz#e44a7dae3f479a12e0fd0d9918c07fc955880140" +pouchdb-merge@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-merge/-/pouchdb-merge-6.4.3.tgz#4ef901f4aaa27be6aec0108998a127fe55bb0628" pouchdb-promise@5.4.0: version "5.4.0" @@ -8716,9 +8782,9 @@ pouchdb-promise@5.4.0: dependencies: lie "3.0.4" -pouchdb-promise@6.4.1, pouchdb-promise@^6.1.2, pouchdb-promise@^6.3.4: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-promise/-/pouchdb-promise-6.4.1.tgz#f93ccbfaea7e29eed3b3359abb1e25d2f63b95db" +pouchdb-promise@6.4.3, pouchdb-promise@^6.1.2, pouchdb-promise@^6.3.4: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-promise/-/pouchdb-promise-6.4.3.tgz#74516f4acf74957b54debd0fb2c0e5b5a68ca7b3" dependencies: lie "3.1.1" @@ -8728,12 +8794,12 @@ pouchdb-promise@^5.4.3: dependencies: lie "3.0.4" -pouchdb-selector-core@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-selector-core/-/pouchdb-selector-core-6.4.1.tgz#992550920a5aff1a4aa41e07e1a40414bb167e93" +pouchdb-selector-core@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-selector-core/-/pouchdb-selector-core-6.4.3.tgz#03a9cfd9284589baf836f3005ff15cf5e0eaf705" dependencies: - pouchdb-collate "6.4.1" - pouchdb-utils "6.4.1" + pouchdb-collate "6.4.3" + pouchdb-utils "6.4.3" pouchdb-upsert@^2.0.0: version "2.2.0" @@ -8747,27 +8813,27 @@ pouchdb-upsert@~2.0.1: dependencies: pouchdb-promise "^5.4.3" -pouchdb-utils@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb-utils/-/pouchdb-utils-6.4.1.tgz#dcd3dfbdc084eb2337094ef6008d1bf603c1dcd4" +pouchdb-utils@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb-utils/-/pouchdb-utils-6.4.3.tgz#aeb6bb8cbd8cf2d9f04e499bc3b70d1ce2a6c78a" dependencies: argsarray "0.0.1" clone-buffer "1.0.0" immediate "3.0.6" inherits "2.0.3" - pouchdb-collections "6.4.1" - pouchdb-errors "6.4.1" - pouchdb-promise "6.4.1" - uuid "^3.1.0" + pouchdb-collections "6.4.3" + pouchdb-errors "6.4.3" + pouchdb-promise "6.4.3" + uuid "3.2.1" pouchdb@^6.3.4: - version "6.4.1" - resolved "https://registry.yarnpkg.com/pouchdb/-/pouchdb-6.4.1.tgz#31386ea14c9bc4ff0478ce6c3927df5f12cb63ce" + version "6.4.3" + resolved "https://registry.yarnpkg.com/pouchdb/-/pouchdb-6.4.3.tgz#077e812a054ac44e13622a64e0c802325d1d44ad" dependencies: argsarray "0.0.1" buffer-from "0.1.1" clone-buffer "1.0.0" - debug "3.0.1" + debug "3.1.0" double-ended-queue "2.1.0-0" immediate "3.0.6" inherits "2.0.3" @@ -8779,30 +8845,31 @@ pouchdb@^6.3.4: lie "3.1.1" ltgt "2.2.0" readable-stream "1.0.33" - request "2.80.0" + request "2.83.0" spark-md5 "3.0.0" through2 "2.0.3" - uuid "^3.1.0" + uuid "3.2.1" vuvuzela "1.0.3" prebuild-install@^2.1.0: - version "2.4.1" - resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.4.1.tgz#c28ba1d1eedc17fbd6b3229a657ffc0fba479b49" + version "2.5.1" + resolved "https://registry.yarnpkg.com/prebuild-install/-/prebuild-install-2.5.1.tgz#0f234140a73760813657c413cdccdda58296b1da" dependencies: + detect-libc "^1.0.3" expand-template "^1.0.2" github-from-package "0.0.0" minimist "^1.2.0" mkdirp "^0.5.1" - node-abi "^2.1.1" + node-abi "^2.2.0" noop-logger "^0.1.1" npmlog "^4.0.1" os-homedir "^1.0.1" - pump "^1.0.1" + pump "^2.0.1" rc "^1.1.6" - simple-get "^1.4.2" + simple-get "^2.7.0" tar-fs "^1.13.0" tunnel-agent "^0.6.0" - xtend "4.0.1" + which-pm-runs "^1.0.0" prelude-ls@~1.1.2: version "1.1.2" @@ -8817,8 +8884,8 @@ preserve@^0.2.0: resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" prettier@^1.8.2: - version "1.9.2" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.9.2.tgz#96bc2132f7a32338e6078aeb29727178c6335827" + version "1.10.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.10.2.tgz#1af8356d1842276a99a5b5529c82dd9e9ad3cc93" pretty-error@^2.0.2: version "2.1.1" @@ -8834,9 +8901,9 @@ pretty-format@^21.2.1: ansi-regex "^3.0.0" ansi-styles "^3.2.0" -pretty-format@^22.1.0: - version "22.1.0" - resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.1.0.tgz#2277605b40ed4529ae4db51ff62f4be817647914" +pretty-format@^22.4.0: + version "22.4.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-22.4.0.tgz#237b1f7e1c50ed03bc65c03ccc29d7c8bb7beb94" dependencies: ansi-regex "^3.0.0" ansi-styles "^3.2.0" @@ -8845,10 +8912,6 @@ private@^0.1.6, private@^0.1.7, private@~0.1.5: version "0.1.8" resolved "https://registry.yarnpkg.com/private/-/private-0.1.8.tgz#2381edb3689f7a53d653190060fcf822d2f368ff" -process-nextick-args@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" - process-nextick-args@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.0.tgz#a37d732f4271b4ab1ad070d35508e8290788ffaa" @@ -8870,8 +8933,8 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" promise-queue@^2.2.3: - version "2.2.3" - resolved "https://registry.yarnpkg.com/promise-queue/-/promise-queue-2.2.3.tgz#8534d76bf4673c3baa3a82bba01bd295cc30f14f" + version "2.2.5" + resolved "https://registry.yarnpkg.com/promise-queue/-/promise-queue-2.2.5.tgz#2f6f5f7c0f6d08109e967659c79b88a9ed5e93b4" promise@^7.1.1: version "7.3.1" @@ -8922,8 +8985,8 @@ property-is-enumerable-x@^1.1.0: to-property-key-x "^2.0.1" prosemirror-commands@^1.0.1: - version "1.0.3" - resolved "https://registry.yarnpkg.com/prosemirror-commands/-/prosemirror-commands-1.0.3.tgz#ba1cf9ca2a7ff61a25a45913a671cf5488ea2db0" + version "1.0.5" + resolved "https://registry.yarnpkg.com/prosemirror-commands/-/prosemirror-commands-1.0.5.tgz#224835d3cf31deaf72ac800c1d2b3d6fa2c81ff9" dependencies: prosemirror-model "^1.0.0" prosemirror-state "^1.0.0" @@ -8937,8 +9000,8 @@ prosemirror-dropcursor@^1.0.0: prosemirror-view "^1.0.0" prosemirror-gapcursor@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/prosemirror-gapcursor/-/prosemirror-gapcursor-1.0.0.tgz#3e51e1e92fd8f2090ff050809ffe48e8db762b11" + version "1.0.1" + resolved "https://registry.yarnpkg.com/prosemirror-gapcursor/-/prosemirror-gapcursor-1.0.1.tgz#48b0b5bcd26155838ef0b2d3fb6a8154ad1ebbe3" dependencies: prosemirror-keymap "^1.0.0" prosemirror-model "^1.0.0" @@ -8967,39 +9030,39 @@ prosemirror-keymap@^1.0.0: prosemirror-state "^1.0.0" w3c-keyname "^1.1.0" -prosemirror-model@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.0.1.tgz#a516e61f1f28f23be10f2c5049549c76f6eec456" +prosemirror-model@^1.0.0, prosemirror-model@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/prosemirror-model/-/prosemirror-model-1.1.0.tgz#94cea251a4dd2696460f7b33061121058f7f8c86" dependencies: orderedmap "^1.0.0" prosemirror-state@^1.0.0, prosemirror-state@^1.0.1: - version "1.0.2" - resolved "https://registry.yarnpkg.com/prosemirror-state/-/prosemirror-state-1.0.2.tgz#f1b55b721b05c7c0817e1ddf42026b59539cfe07" + version "1.1.0" + resolved "https://registry.yarnpkg.com/prosemirror-state/-/prosemirror-state-1.1.0.tgz#36187dc53028bb61b53f6af3ba672e2995084bc6" dependencies: prosemirror-model "^1.0.0" prosemirror-transform "^1.0.0" prosemirror-transform@^1.0.0: - version "1.0.1" - resolved "https://registry.yarnpkg.com/prosemirror-transform/-/prosemirror-transform-1.0.1.tgz#7ea08e3ab0a3ceb3e5016c6178be83f3eec4a7d3" + version "1.0.2" + resolved "https://registry.yarnpkg.com/prosemirror-transform/-/prosemirror-transform-1.0.2.tgz#3b67f1ff639cf195d4392dea053765547d5fd412" dependencies: prosemirror-model "^1.0.0" prosemirror-view@^1.0.0: - version "1.0.5" - resolved "https://registry.yarnpkg.com/prosemirror-view/-/prosemirror-view-1.0.5.tgz#be31aa7381630e42dea5e11381dd2c60148ebccb" + version "1.0.11" + resolved "https://registry.yarnpkg.com/prosemirror-view/-/prosemirror-view-1.0.11.tgz#39a5976a6aba0e8479f18241186815af1e126d3f" dependencies: - prosemirror-model "^1.0.0" + prosemirror-model "^1.1.0" prosemirror-state "^1.0.0" prosemirror-transform "^1.0.0" proxy-addr@~2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.2.tgz#6571504f47bb988ec8180253f85dd7e14952bdec" + version "2.0.3" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.3.tgz#355f262505a621646b3130a728eb647e22055341" dependencies: forwarded "~0.1.2" - ipaddr.js "1.5.2" + ipaddr.js "1.6.0" prr@~1.0.1: version "1.0.1" @@ -9026,8 +9089,8 @@ public-encrypt@^4.0.0: randombytes "^2.0.1" pubsweet-client@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/pubsweet-client/-/pubsweet-client-2.1.0.tgz#43867c48e4a22c4acda2a605827d5cda6bb7209c" + version "2.1.1" + resolved "https://registry.yarnpkg.com/pubsweet-client/-/pubsweet-client-2.1.1.tgz#2294224b244f6090740173f36ed49d61a2f40356" dependencies: authsome "0.0.9" config "^1.21.0" @@ -9037,7 +9100,6 @@ pubsweet-client@^2.1.0: lint-staged "^6.0.0" lodash "^4.0.0" prop-types "^15.5.8" - pubsweet-component-login "^1.0.1" react "^16.2.0" react-css-themr "^2.1.2" react-redux "^5.0.2" @@ -9062,8 +9124,8 @@ pubsweet-component-ink-backend@^0.1.1: temp "^0.8.3" pubsweet-component-ink-frontend@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pubsweet-component-ink-frontend/-/pubsweet-component-ink-frontend-1.0.0.tgz#5bc61c0d854df084cec12d45ada01bcbef157cb0" + version "1.0.1" + resolved "https://registry.yarnpkg.com/pubsweet-component-ink-frontend/-/pubsweet-component-ink-frontend-1.0.1.tgz#b65a47ff0868265b05ad645b4ceb056339c331c7" dependencies: prop-types "^15.5.10" query-string "^5.0.1" @@ -9085,8 +9147,8 @@ pubsweet-component-login@^1.0.1: redux-form "^7.0.3" pubsweet-component-signup@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/pubsweet-component-signup/-/pubsweet-component-signup-1.0.0.tgz#33e5c5e5c371dfc63667f1c7e689dafecc0e888c" + version "1.0.1" + resolved "https://registry.yarnpkg.com/pubsweet-component-signup/-/pubsweet-component-signup-1.0.1.tgz#f18f3a18940c440615af41bc11a155eff91c9b2d" dependencies: prop-types "^15.5.10" react-bootstrap "^0.32.0" @@ -9094,11 +9156,12 @@ pubsweet-component-signup@^1.0.0: react-router "^4.2.0" redux "^3.7.2" -pubsweet-server@^1.0.0-beta.2, pubsweet-server@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/pubsweet-server/-/pubsweet-server-1.0.1.tgz#48d9e15567e58ab73beb2ce2e4fbb144bb5c732b" +pubsweet-server@^1.0.1, pubsweet-server@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/pubsweet-server/-/pubsweet-server-1.1.1.tgz#89f16393bd947cec8cb5131b770101f21ef35911" dependencies: - "@pubsweet/logger" "^0.0.2" + "@pubsweet/logger" "^0.2.2" + apollo-server-express "^1.3.2" authsome "0.0.9" bcrypt "^1.0.2" bluebird "^3.5.1" @@ -9108,9 +9171,11 @@ pubsweet-server@^1.0.0-beta.2, pubsweet-server@^1.0.1: cookie-parser "^1.4.3" dotenv "^4.0.0" express "^4.16.1" + graphql "^0.12.3" + graphql-tools "^2.18.0" helmet "^3.8.1" http-status-codes "^1.0.6" - joi "^10.0.6" + joi "^13.1.0" jsonwebtoken "^7.1.7" lodash "^4.0.0" minimist "^1.2.0" @@ -9128,21 +9193,22 @@ pubsweet-server@^1.0.0-beta.2, pubsweet-server@^1.0.1: pouchdb-upsert "^2.0.0" promise-queue "^2.2.3" prompt "^1.0.0" - pubsweet-sse "^0.1.1" + pubsweet-sse "^0.1.4" relational-pouch "^1.4.5" + require-relative "^0.8.7" uuid "^3.0.1" winston "^2.2.0" -pubsweet-sse@^0.1.1: - version "0.1.3" - resolved "https://registry.yarnpkg.com/pubsweet-sse/-/pubsweet-sse-0.1.3.tgz#a185e81e270ef3b1132cae12959c1ac430a6ae03" +pubsweet-sse@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/pubsweet-sse/-/pubsweet-sse-0.1.4.tgz#1ff38a230143cbd487a8d44afb28a6c4746ee464" pubsweet@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/pubsweet/-/pubsweet-1.1.1.tgz#9024f83be9b92d8b5b4e483fb2108212e8ce4115" + version "1.1.9" + resolved "https://registry.yarnpkg.com/pubsweet/-/pubsweet-1.1.9.tgz#645def7c850b7443ade106c862e04c0ced8b51d5" dependencies: - "@pubsweet/db-manager" "^0.0.7" - "@pubsweet/logger" "^0.0.2" + "@pubsweet/db-manager" "^0.0.17" + "@pubsweet/logger" "^0.2.2" bluebird "^3.5.0" colors "^1.1.2" commander "^2.9.0" @@ -9150,23 +9216,22 @@ pubsweet@^1.1.1: forever-monitor "^1.7.0" fs-extra "^4.0.2" inflection "^1.12.0" - joi "^10.4.1" prompt flatiron/prompt#1c95d1d8d333b5fbc13fa5f0619f3dcf0d514f87 - pubsweet-server "^1.0.1" + pubsweet-server "^1.1.1" require-relative "^0.8.7" uuid "^3.0.1" webpack "^3.8.1" webpack-dev-middleware "^1.12.0" webpack-hot-middleware "^2.20.0" -pump@^1.0.0, pump@^1.0.1: +pump@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/pump/-/pump-1.0.3.tgz#5dfe8311c33bbf6fc18261f9f34702c47c08a954" dependencies: end-of-stream "^1.1.0" once "^1.3.1" -pump@^2.0.0: +pump@^2.0.0, pump@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" dependencies: @@ -9226,8 +9291,8 @@ query-string@^4.1.0: strict-uri-encode "^1.0.0" query-string@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.0.1.tgz#6e2b86fe0e08aef682ecbe86e85834765402bd88" + version "5.1.0" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.0.tgz#9583b15fd1307f899e973ed418886426a9976469" dependencies: decode-uri-component "^0.2.0" object-assign "^4.1.0" @@ -9263,7 +9328,7 @@ railroad-diagrams@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz#eb7e6267548ddedfb899c1b90e57374559cddb7e" -randexp@^0.4.2: +randexp@0.4.6: version "0.4.6" resolved "https://registry.yarnpkg.com/randexp/-/randexp-0.4.6.tgz#e986ad5e5e31dae13ddd6f7b3019aa7c87f60ca3" dependencies: @@ -9278,14 +9343,14 @@ randomatic@^1.1.3: kind-of "^4.0.0" randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.5.tgz#dc009a246b8d09a177b4b7a0ae77bc570f4b1b79" + version "2.0.6" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.6.tgz#d302c522948588848a8d300c932b44c24231da80" dependencies: safe-buffer "^5.1.0" randomfill@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.3.tgz#b96b7df587f01dd91726c418f30553b1418e3d62" + version "1.0.4" + resolved "https://registry.yarnpkg.com/randomfill/-/randomfill-1.0.4.tgz#c92196fc86ab42be983f1bf31778224931d61458" dependencies: randombytes "^2.0.5" safe-buffer "^5.1.0" @@ -9303,16 +9368,7 @@ raw-body@2.3.2: iconv-lite "0.4.19" unpipe "1.0.0" -rc@^1.0.1, rc@^1.1.6: - version "1.2.2" - resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077" - dependencies: - deep-extend "~0.4.0" - ini "~1.3.0" - minimist "^1.2.0" - strip-json-comments "~2.0.1" - -rc@^1.1.7: +rc@^1.0.1, rc@^1.1.6, rc@^1.1.7: version "1.2.5" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.5.tgz#275cd687f6e3b36cc756baa26dfee80a790301fd" dependencies: @@ -9433,14 +9489,7 @@ react-dom@^15.6.1: object-assign "^4.1.0" prop-types "^15.5.10" -react-dropzone@^4.1.2: - version "4.2.3" - resolved "https://registry.yarnpkg.com/react-dropzone/-/react-dropzone-4.2.3.tgz#f7bc92aa5fe4253fdb1fd3792114d2d29b47119a" - dependencies: - attr-accept "^1.0.3" - prop-types "^15.5.7" - -react-dropzone@^4.2.7: +react-dropzone@^4.1.2, react-dropzone@^4.2.7: version "4.2.8" resolved "https://registry.yarnpkg.com/react-dropzone/-/react-dropzone-4.2.8.tgz#27ce163544d92c75734b0e1e54c471979587e737" dependencies: @@ -9481,23 +9530,15 @@ react-icons@^2.2.7: dependencies: react-icon-base "2.1.0" -react-input-autosize@^2.1.0: - version "2.1.2" - resolved "https://registry.yarnpkg.com/react-input-autosize/-/react-input-autosize-2.1.2.tgz#a3dc11a5517c434db25229925541309de3f7a8f5" +react-input-autosize@^2.1.2: + version "2.2.1" + resolved "https://registry.yarnpkg.com/react-input-autosize/-/react-input-autosize-2.2.1.tgz#ec428fa15b1592994fb5f9aa15bb1eb6baf420f8" dependencies: prop-types "^15.5.8" -react-modal@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/react-modal/-/react-modal-3.2.1.tgz#fa8f76aed55b67c22dcf1a1c15b05c8d11f18afe" - dependencies: - exenv "^1.2.0" - prop-types "^15.5.10" - warning "^3.0.0" - react-moment@^0.6.1: - version "0.6.8" - resolved "https://registry.yarnpkg.com/react-moment/-/react-moment-0.6.8.tgz#8612a90f3c8afec26fef6844806d84b9d9e3b212" + version "0.6.9" + resolved "https://registry.yarnpkg.com/react-moment/-/react-moment-0.6.9.tgz#f13a0ccedaf65b5fb8b1467d9f91c5346d74c3e2" react-overlays@^0.8.0: version "0.8.3" @@ -9531,18 +9572,7 @@ react-reconciler@^0.7.0: object-assign "^4.1.1" prop-types "^15.6.0" -react-redux@^5.0.2, react-redux@^5.0.6: - version "5.0.6" - resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.0.6.tgz#23ed3a4f986359d68b5212eaaa681e60d6574946" - dependencies: - hoist-non-react-statics "^2.2.1" - invariant "^2.0.0" - lodash "^4.2.0" - lodash-es "^4.2.0" - loose-envify "^1.1.0" - prop-types "^15.5.10" - -react-redux@^5.0.7: +react-redux@^5.0.2, react-redux@^5.0.6, react-redux@^5.0.7: version "5.0.7" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.0.7.tgz#0dc1076d9afb4670f993ffaef44b8f8c1155a4c8" dependencies: @@ -9585,12 +9615,12 @@ react-router@^4.2.0: warning "^3.0.0" react-select@^1.0.0-rc.10: - version "1.1.0" - resolved "https://registry.yarnpkg.com/react-select/-/react-select-1.1.0.tgz#626a2de839fdea2ade74dd1b143a9bde34be6c82" + version "1.2.1" + resolved "https://registry.yarnpkg.com/react-select/-/react-select-1.2.1.tgz#a2fe58a569eb14dcaa6543816260b97e538120d1" dependencies: classnames "^2.2.4" prop-types "^15.5.8" - react-input-autosize "^2.1.0" + react-input-autosize "^2.1.2" react-styleguidist@^6.2.5: version "6.2.5" @@ -9752,7 +9782,7 @@ read@1.0.x: dependencies: mute-stream "~0.0.4" -"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.4, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.9, readable-stream@^2.3.3: version "2.3.4" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.4.tgz#c946c3f47fa7d8eabc0b6150f4a12f69a4574071" dependencies: @@ -9791,18 +9821,6 @@ readable-stream@1.1.x: isarray "0.0.1" string_decoder "~0.10.x" -readable-stream@^2.0.5, readable-stream@^2.2.6, readable-stream@^2.3.3: - version "2.3.3" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.3.tgz#368f2512d79f9d46fdfc71349ae7878bbc1eb95c" - dependencies: - core-util-is "~1.0.0" - inherits "~2.0.3" - isarray "~1.0.0" - process-nextick-args "~1.0.6" - safe-buffer "~5.1.1" - string_decoder "~1.0.3" - util-deprecate "~1.0.1" - readable-stream@~0.0.2: version "0.0.4" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-0.0.4.tgz#f32d76e3fb863344a548d79923007173665b3b8d" @@ -9913,11 +9931,11 @@ reduce-function-call@^1.0.1: balanced-match "^0.4.2" redux-form@^7.0.3: - version "7.2.0" - resolved "https://registry.yarnpkg.com/redux-form/-/redux-form-7.2.0.tgz#4465d9bc863e40b1704695d672bea75fcf81db04" + version "7.2.3" + resolved "https://registry.yarnpkg.com/redux-form/-/redux-form-7.2.3.tgz#a01111116f386f3d88451b5528dfbb180561a8b4" dependencies: deep-equal "^1.0.1" - es6-error "^4.0.0" + es6-error "^4.1.1" hoist-non-react-statics "^2.3.1" invariant "^2.2.2" is-promise "^2.1.0" @@ -9932,8 +9950,8 @@ redux-logger@^3.0.1: deep-diff "^0.3.5" redux-mock-store@^1.4.0: - version "1.4.0" - resolved "https://registry.yarnpkg.com/redux-mock-store/-/redux-mock-store-1.4.0.tgz#cdc87650f5759f293588fecc9cac2b057d95190d" + version "1.5.1" + resolved "https://registry.yarnpkg.com/redux-mock-store/-/redux-mock-store-1.5.1.tgz#fca4335392e66605420b5559fe02fc5b8bb6d63c" dependencies: lodash.isplainobject "^4.0.6" @@ -9981,10 +9999,11 @@ regex-cache@^0.4.2: is-equal-shallow "^0.1.3" regex-not@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.0.tgz#42f83e39771622df826b02af176525d6a5f157f9" + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" dependencies: - extend-shallow "^2.0.1" + extend-shallow "^3.0.2" + safe-regex "^1.1.0" regexpu-core@^1.0.0: version "1.0.0" @@ -10003,8 +10022,8 @@ regexpu-core@^2.0.0: regjsparser "^0.1.4" registry-auth-token@^3.0.1: - version "3.3.1" - resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.1.tgz#fb0d3289ee0d9ada2cbb52af5dfe66cb070d3006" + version "3.3.2" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.3.2.tgz#851fd49038eecb586911115af845260eec983f20" dependencies: rc "^1.1.6" safe-buffer "^5.0.1" @@ -10134,7 +10153,7 @@ request-promise-core@1.1.1: dependencies: lodash "^4.13.1" -request-promise-native@^1.0.3, request-promise-native@^1.0.5: +request-promise-native@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.5.tgz#5281770f68e0c9719e5163fd3fab482215f4fda5" dependencies: @@ -10142,7 +10161,7 @@ request-promise-native@^1.0.3, request-promise-native@^1.0.5: stealthy-require "^1.1.0" tough-cookie ">=2.3.3" -request@2, request@^2.81.0, request@^2.83.0: +request@2, request@2.83.0, request@^2.81.0, request@^2.83.0: version "2.83.0" resolved "https://registry.yarnpkg.com/request/-/request-2.83.0.tgz#ca0b65da02ed62935887808e6f510381034e3356" dependencies: @@ -10169,32 +10188,6 @@ request@2, request@^2.81.0, request@^2.83.0: tunnel-agent "^0.6.0" uuid "^3.1.0" -request@2.80.0: - version "2.80.0" - resolved "https://registry.yarnpkg.com/request/-/request-2.80.0.tgz#8cc162d76d79381cdefdd3505d76b80b60589bd0" - dependencies: - aws-sign2 "~0.6.0" - aws4 "^1.2.1" - caseless "~0.12.0" - combined-stream "~1.0.5" - extend "~3.0.0" - forever-agent "~0.6.1" - form-data "~2.1.1" - har-validator "~4.2.0" - hawk "~3.1.3" - http-signature "~1.1.0" - is-typedarray "~1.0.0" - isstream "~0.1.2" - json-stringify-safe "~5.0.1" - mime-types "~2.1.7" - oauth-sign "~0.8.1" - performance-now "^0.2.0" - qs "~6.3.0" - stringstream "~0.0.4" - tough-cookie "~2.3.0" - tunnel-agent "~0.4.1" - uuid "^3.0.0" - request@2.81.0: version "2.81.0" resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" @@ -10332,7 +10325,7 @@ resolve@1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" -resolve@^1.2.0, resolve@^1.3.3: +resolve@^1.3.3, resolve@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.5.0.tgz#1f09acce796c9a762579f31b2c1cc4c3cddf9f36" dependencies: @@ -10370,7 +10363,7 @@ right-pad@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/right-pad/-/right-pad-1.0.1.tgz#8ca08c2cbb5b55e74dafa96bf7fd1a27d568c8d0" -rimraf@2, rimraf@2.x.x, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: +rimraf@2, rimraf@2.x.x, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1, rimraf@^2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.2.tgz#2ed8150d24a16ea8651e6d6ef0f47c4158ce7a36" dependencies: @@ -10425,8 +10418,8 @@ rx-lite@*, rx-lite@^4.0.8: resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz#0b1e11af8bc44836f04a6407e92da42467b79444" rxjs@^5.0.0-beta.11, rxjs@^5.4.2: - version "5.5.5" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.5.tgz#e164f11d38eaf29f56f08c3447f74ff02dd84e97" + version "5.5.6" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.6.tgz#e31fb96d6fd2ff1fd84bcea8ae9c02d007179c02" dependencies: symbol-observable "1.0.1" @@ -10434,9 +10427,15 @@ safe-buffer@5.1.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, s version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + dependencies: + ret "~0.1.10" + sane@^2.0.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/sane/-/sane-2.2.0.tgz#d6d2e2fcab00e3d283c93b912b7c3a20846f1d56" + version "2.4.1" + resolved "https://registry.yarnpkg.com/sane/-/sane-2.4.1.tgz#29f991208cf28636720efdc584293e7fd66663a5" dependencies: anymatch "^1.3.0" exec-sh "^0.2.0" @@ -10471,7 +10470,7 @@ sax@1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" -sax@>=0.6.0, sax@^1.2.1, sax@~1.2.1: +sax@>=0.6.0, sax@^1.2.4, sax@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" @@ -10481,6 +10480,13 @@ schema-utils@^0.3.0: dependencies: ajv "^5.0.0" +schema-utils@^0.4.2, schema-utils@^0.4.5: + version "0.4.5" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.5.tgz#21836f0608aac17b78f9e3e24daff14a5ca13a3e" + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + scss-tokenizer@^0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" @@ -10502,7 +10508,7 @@ semver-utils@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/semver-utils/-/semver-utils-1.1.1.tgz#27d92fec34d27cfa42707d3b40d025ae9855f2df" -"semver@2 || 3 || 4 || 5", semver@^5.3.0: +"semver@2 || 3 || 4 || 5", semver@^5.0.1, semver@^5.1.0, semver@^5.3.0, semver@^5.4.1: version "5.5.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.5.0.tgz#dc4bbc7a6ca9d916dee5d43516f0092b58f7b8ab" @@ -10510,10 +10516,6 @@ semver@5.3.0, semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" -semver@^5.0.1, semver@^5.1.0, semver@^5.4.1: - version "5.4.1" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.4.1.tgz#e059c09d8571f0540823733433505d3a2f00b18e" - send@0.16.1: version "0.16.1" resolved "https://registry.yarnpkg.com/send/-/send-0.16.1.tgz#a70e1ca21d1382c11d0d9f6231deb281080d7ab3" @@ -10602,8 +10604,8 @@ setprototypeof@1.1.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.0.tgz#d0bd85536887b6fe7c0d818cb962d9d91c54e656" sha.js@^2.4.0, sha.js@^2.4.8: - version "2.4.9" - resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.9.tgz#98f64880474b74f4a38b8da9d3c0f2d104633e7d" + version "2.4.10" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.10.tgz#b1fde5cd7d11a5626638a07c604ab909cfa31f9b" dependencies: inherits "^2.0.1" safe-buffer "^5.0.1" @@ -10644,13 +10646,17 @@ signal-exit@^3.0.0, signal-exit@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" -simple-get@^1.4.2: - version "1.4.3" - resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-1.4.3.tgz#e9755eda407e96da40c5e5158c9ea37b33becbeb" +simple-concat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simple-concat/-/simple-concat-1.0.0.tgz#7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6" + +simple-get@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/simple-get/-/simple-get-2.7.0.tgz#ad37f926d08129237ff08c4f2edfd6f10e0380b5" dependencies: + decompress-response "^3.3.0" once "^1.3.1" - unzip-response "^1.0.0" - xtend "^4.0.0" + simple-concat "^1.0.0" slash@^1.0.0: version "1.0.0" @@ -10755,9 +10761,9 @@ source-map-support@^0.4.15: dependencies: source-map "^0.5.6" -source-map-support@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.0.tgz#2018a7ad2bdf8faf2691e5fddab26bed5a2bacab" +source-map-support@^0.5.0, source-map-support@^0.5.1: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.3.tgz#2b3d5fff298cfa4d1afd7d4352d569e9a0158e76" dependencies: source-map "^0.6.0" @@ -10769,7 +10775,7 @@ source-map@0.5.6: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" -source-map@0.5.x, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.6: +source-map@0.5.x, source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" @@ -10878,9 +10884,9 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" -ssri@^5.0.0: - version "5.2.2" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.2.2.tgz#797be390aefe03996e4d961657a946121e2feacf" +ssri@^5.2.4: + version "5.2.4" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-5.2.4.tgz#9985e14041e65fc397af96542be35724ac11da52" dependencies: safe-buffer "^5.1.1" @@ -10900,6 +10906,10 @@ staged-git-files@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-0.0.4.tgz#d797e1b551ca7a639dec0237dc6eb4bb9be17d35" +staged-git-files@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/staged-git-files/-/staged-git-files-1.0.0.tgz#cdb847837c1fcc52c08a872d4883cc0877668a80" + state-toggle@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/state-toggle/-/state-toggle-1.0.0.tgz#d20f9a616bb4f0c3b98b91922d25b640aa2bc425" @@ -10944,12 +10954,12 @@ stream-each@^1.1.0: stream-shift "^1.0.0" stream-http@^2.7.2: - version "2.7.2" - resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.2.tgz#40a050ec8dc3b53b33d9909415c02c0bf1abfbad" + version "2.8.0" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.0.tgz#fd86546dac9b1c91aff8fc5d287b98fafb41bc10" dependencies: builtin-status-codes "^3.0.0" inherits "^2.0.1" - readable-stream "^2.2.6" + readable-stream "^2.3.3" to-arraybuffer "^1.0.0" xtend "^4.0.0" @@ -11136,12 +11146,12 @@ stylelint-config-pubsweet@^0.0.3: stylelint-order "^0.7.0" stylelint-config-recommended@^2.0.0: - version "2.0.1" - resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-2.0.1.tgz#4746119ec85f5f4663c7b5107c05c13ed0e2ab0d" + version "2.1.0" + resolved "https://registry.yarnpkg.com/stylelint-config-recommended/-/stylelint-config-recommended-2.1.0.tgz#f526d5c771c6811186d9eaedbed02195fee30858" stylelint-config-standard@^18.0.0: - version "18.0.0" - resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-18.0.0.tgz#0d872b40fafdcddcf4188fb5b64ddb3887e8aefc" + version "18.1.0" + resolved "https://registry.yarnpkg.com/stylelint-config-standard/-/stylelint-config-standard-18.1.0.tgz#e4d977063f5bca77970033d2f76941c3cc19fd9c" dependencies: stylelint-config-recommended "^2.0.0" @@ -11202,12 +11212,12 @@ stylis-rule-sheet@^0.0.7: resolved "https://registry.yarnpkg.com/stylis-rule-sheet/-/stylis-rule-sheet-0.0.7.tgz#5c51dc879141a61821c2094ba91d2cbcf2469c6c" stylis@^3.4.0: - version "3.4.8" - resolved "https://registry.yarnpkg.com/stylis/-/stylis-3.4.8.tgz#94380babbcd4c75726215794ca985b38ec96d1a3" + version "3.4.10" + resolved "https://registry.yarnpkg.com/stylis/-/stylis-3.4.10.tgz#a135cab4b9ff208e327fbb5a6fde3fa991c638ee" -sublevel-pouchdb@6.4.1: - version "6.4.1" - resolved "https://registry.yarnpkg.com/sublevel-pouchdb/-/sublevel-pouchdb-6.4.1.tgz#dda37c29ae4f92e94bd490459447a7fc30b99658" +sublevel-pouchdb@6.4.3: + version "6.4.3" + resolved "https://registry.yarnpkg.com/sublevel-pouchdb/-/sublevel-pouchdb-6.4.3.tgz#e4eca52d8ac7ba17ff6c18fcdc51f5ecbbb15597" dependencies: inherits "2.0.3" level-codec "7.0.1" @@ -11258,7 +11268,7 @@ supports-color@^3.1.2, supports-color@^3.2.3: dependencies: has-flag "^1.0.0" -supports-color@^4.0.0, supports-color@^4.2.1, supports-color@^4.4.0: +supports-color@^4.2.1: version "4.5.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-4.5.0.tgz#be7a0de484dec5c5cddf8b3d59125044912f635b" dependencies: @@ -11294,15 +11304,11 @@ symbol-observable@^0.2.2: version "0.2.4" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-0.2.4.tgz#95a83db26186d6af7e7a18dbd9760a2f86d08f40" -symbol-observable@^1.0.3, symbol-observable@^1.0.4: - version "1.1.0" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.1.0.tgz#5c68fd8d54115d9dfb72a84720549222e8db9b32" - -symbol-observable@^1.1.0: +symbol-observable@^1.0.3, symbol-observable@^1.0.4, symbol-observable@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" -symbol-tree@^3.2.1: +symbol-tree@^3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" @@ -11365,13 +11371,13 @@ temp-dir@^1.0.0: resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" temp-write@^3.3.0: - version "3.3.0" - resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.3.0.tgz#c1a96de2b36061342eae81f44ff001aec8f615a9" + version "3.4.0" + resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.4.0.tgz#8cff630fb7e9da05f047c74ce4ce4d685457d492" dependencies: graceful-fs "^4.1.2" is-stream "^1.1.0" make-dir "^1.0.0" - pify "^2.2.0" + pify "^3.0.0" temp-dir "^1.0.0" uuid "^3.0.1" @@ -11390,8 +11396,8 @@ tempfile@^1.1.1: uuid "^2.0.1" test-exclude@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.1.1.tgz#4d84964b0966b0087ecc334a2ce002d3d9341e26" + version "4.2.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-4.2.0.tgz#07e3613609a362c74516a717515e13322ab45b3c" dependencies: arrify "^1.0.1" micromatch "^2.3.11" @@ -11442,8 +11448,8 @@ timed-out@^4.0.0: resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" timers-browserify@^2.0.4: - version "2.0.4" - resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.4.tgz#96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6" + version "2.0.6" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.6.tgz#241e76927d9ca05f4d959819022f5b3664b64bae" dependencies: setimmediate "^1.0.4" @@ -11581,6 +11587,12 @@ topo@2.x.x: dependencies: hoek "4.x.x" +topo@3.x.x: + version "3.0.0" + resolved "https://registry.yarnpkg.com/topo/-/topo-3.0.0.tgz#37e48c330efeac784538e0acd3e62ca5e231fe7a" + dependencies: + hoek "5.x.x" + toposort@^1.0.0: version "1.0.6" resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.6.tgz#c31748e55d210effc00fdcdc7d6e68d7d7bb9cec" @@ -11682,20 +11694,13 @@ type-detect@^4.0.5: version "4.0.8" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" -type-is@^1.6.14: +type-is@^1.6.14, type-is@^1.6.4, type-is@~1.6.15: version "1.6.16" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.16.tgz#f89ce341541c672b25ee7ae3c73dee3b2be50194" dependencies: media-typer "0.3.0" mime-types "~2.1.18" -type-is@^1.6.4, type-is@~1.6.15: - version "1.6.15" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" - dependencies: - media-typer "0.3.0" - mime-types "~2.1.15" - typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" @@ -11724,16 +11729,23 @@ ua-parser-js@^0.7.9: version "0.7.17" resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.17.tgz#e9ec5f9498b9ec910e7ae3ac626a805c4d09ecac" -uglify-es@3.2.2, uglify-es@^3.2.1: +uglify-es@3.2.2: version "3.2.2" resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.2.2.tgz#15c62b7775002c81b7987a1c49ecd3f126cace73" dependencies: commander "~2.12.1" source-map "~0.6.1" +uglify-es@^3.3.4: + version "3.3.9" + resolved "https://registry.yarnpkg.com/uglify-es/-/uglify-es-3.3.9.tgz#0c1c4f0700bed8dbc124cdb304d2592ca203e677" + dependencies: + commander "~2.13.0" + source-map "~0.6.1" + uglify-js@3.3.x: - version "3.3.10" - resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.10.tgz#8e47821d4cf28e14c1826a0078ba0825ed094da8" + version "3.3.11" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.3.11.tgz#e9d058b20715138bb4e8e5cae2ea581686bdaae3" dependencies: commander "~2.14.1" source-map "~0.6.1" @@ -11773,22 +11785,26 @@ uglifyjs-webpack-plugin@^0.4.6: webpack-sources "^1.0.1" uglifyjs-webpack-plugin@^1.1.2: - version "1.1.4" - resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.1.4.tgz#e43ad6e736c315024eb99481a7cc9362d6a066be" + version "1.2.0" + resolved "https://registry.yarnpkg.com/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.0.tgz#f706fa4c655000a086b4a97c7d835ed0f6e9b0ef" dependencies: - cacache "^10.0.0" + cacache "^10.0.1" find-cache-dir "^1.0.0" - schema-utils "^0.3.0" + schema-utils "^0.4.2" serialize-javascript "^1.4.0" source-map "^0.6.1" - uglify-es "^3.2.1" - webpack-sources "^1.0.1" - worker-farm "^1.4.1" + uglify-es "^3.3.4" + webpack-sources "^1.1.0" + worker-farm "^1.5.2" uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" +ultron@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" + uncontrollable@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/uncontrollable/-/uncontrollable-4.1.0.tgz#e0358291252e1865222d90939b19f2f49f81c1a9" @@ -11912,10 +11928,6 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" -unzip-response@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-1.0.2.tgz#b984f0877fc0a89c2c773cc1ef7b5b232b5b06fe" - unzip-response@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" @@ -12034,18 +12046,18 @@ utils-merge@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" -uuid@3.1.0, uuid@^3.0.1, uuid@^3.1.0: +uuid@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" +uuid@3.2.1, uuid@^3.0.0, uuid@^3.0.1, uuid@^3.1.0, uuid@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" + uuid@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/uuid/-/uuid-2.0.3.tgz#67e2e863797215530dff318e5bf9dcebfd47b21a" -uuid@^3.0.0, uuid@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.2.1.tgz#12c528bb9d58d0b9265d9a2f6f0fe8be17ff1f14" - v8flags@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.1.1.tgz#aab1a1fa30d45f88dd321148875ac02c0b55e5b4" @@ -12120,6 +12132,12 @@ vuvuzela@1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/vuvuzela/-/vuvuzela-1.0.3.tgz#3be145e58271c73ca55279dd851f12a682114b0b" +w3c-hr-time@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz#82ac2bff63d950ea9e3189a58a65625fedf19045" + dependencies: + browser-process-hrtime "^0.1.2" + w3c-keyname@^1.1.0: version "1.1.8" resolved "https://registry.yarnpkg.com/w3c-keyname/-/w3c-keyname-1.1.8.tgz#4e2219663760fd6535b7a1550f1552d71fc9372c" @@ -12247,7 +12265,7 @@ webpack-node-externals@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/webpack-node-externals/-/webpack-node-externals-1.6.0.tgz#232c62ec6092b100635a3d29d83c1747128df9bd" -webpack-sources@^1.0.1: +webpack-sources@^1.0.1, webpack-sources@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.1.0.tgz#a101ebae59d6507354d71d8013950a3a8b7a5a54" dependencies: @@ -12255,13 +12273,13 @@ webpack-sources@^1.0.1: source-map "~0.6.1" webpack@^3.8.1: - version "3.10.0" - resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.10.0.tgz#5291b875078cf2abf42bdd23afe3f8f96c17d725" + version "3.11.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-3.11.0.tgz#77da451b1d7b4b117adaf41a1a93b5742f24d894" dependencies: acorn "^5.0.0" acorn-dynamic-import "^2.0.0" - ajv "^5.1.5" - ajv-keywords "^2.0.0" + ajv "^6.1.0" + ajv-keywords "^3.1.0" async "^2.1.2" enhanced-resolve "^3.4.0" escope "^3.6.0" @@ -12292,7 +12310,7 @@ websocket-extensions@>=0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" -whatwg-encoding@^1.0.1: +whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.3.tgz#57c235bc8657e914d24e1a397d3c82daee0a6ba3" dependencies: @@ -12302,7 +12320,7 @@ whatwg-fetch@>=0.10.0: version "2.0.3" resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz#9c84ec2dcf68187ff00bc64e1274b442176e1c84" -whatwg-url@^6.3.0: +whatwg-url@^6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-6.4.0.tgz#08fdf2b9e872783a7a1f6216260a1d66cc722e08" dependencies: @@ -12322,6 +12340,10 @@ which-module@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" +which-pm-runs@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" + which@1, which@^1.2.10, which@^1.2.12, which@^1.2.14, which@^1.2.9, which@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/which/-/which-1.3.0.tgz#ff04bdfc010ee547d780bec38e1ac1c2777d253a" @@ -12404,7 +12426,7 @@ wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" -worker-farm@^1.4.1: +worker-farm@^1.4.1, worker-farm@^1.5.2: version "1.5.2" resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.5.2.tgz#32b312e5dc3d5d45d79ef44acc2587491cd729ae" dependencies: @@ -12460,6 +12482,14 @@ write@^0.2.1: dependencies: mkdirp "^0.5.1" +ws@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-4.0.0.tgz#bfe1da4c08eeb9780b986e0e4d10eccd7345999f" + dependencies: + async-limiter "~1.0.0" + safe-buffer "~5.1.0" + ultron "~1.1.0" + x-is-function@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/x-is-function/-/x-is-function-1.0.4.tgz#5d294dc3d268cbdd062580e0c5df77a391d1fa1e" @@ -12476,9 +12506,9 @@ xml-char-classes@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d" -xml-name-validator@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" xml2js@0.4.17: version "0.4.17" @@ -12493,7 +12523,7 @@ xmlbuilder@4.2.1, xmlbuilder@^4.1.0: dependencies: lodash "^4.0.0" -xtend@4.0.1, "xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: +"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.0, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" @@ -12501,6 +12531,10 @@ y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" +y18n@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" + yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" @@ -12548,8 +12582,8 @@ yargs@6.6.0: yargs-parser "^4.2.0" yargs@^10.0.3: - version "10.1.1" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.1.1.tgz#5fe1ea306985a099b33492001fa19a1e61efe285" + version "10.1.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-10.1.2.tgz#454d074c2b16a51a43e2fb7807e4f9de69ccb5c5" dependencies: cliui "^4.0.0" decamelize "^1.1.1" @@ -12608,3 +12642,7 @@ yargs@~3.10.0: cliui "^2.1.0" decamelize "^1.0.0" window-size "0.1.0" + +zen-observable@^0.7.0: + version "0.7.1" + resolved "https://registry.yarnpkg.com/zen-observable/-/zen-observable-0.7.1.tgz#f84075c0ee085594d3566e1d6454207f126411b3"