diff --git a/History.md b/History.md index 617e2b590c..9b3b1cd305 100644 --- a/History.md +++ b/History.md @@ -5,17 +5,28 @@ * `meteor-tool@2.4` - `meteor show` now reports if a package is deprecated +## v2.3.6, 2021-09-02 + +#### Highlights + +* Updated Node.js per [August 31st security release](https://nodejs.org/en/blog/vulnerability/aug-2021-security-releases2/) + +#### Meteor Version Release + +* `meteor-tool@2.3.6` + - Node.js updated to [v14.17.6](https://nodejs.org/en/blog/release/v14.17.6/) + #### Independent Releases * `minifier-js@2.6.1` - Terser updated to [4.8.0](https://github.com/terser/terser/blob/master/CHANGELOG.md#v480) - + * `routepolicy@1.1.1` - Removed `underscore` dependency since it was not used in the package - + * `email@2.1.1` - Updated `nodemailer` to v6.6.3 - + * `callback-hook@1.3.1` - Modernized the code - Fixed a variable assignment bug in `dontBindEnvironment` function @@ -23,6 +34,64 @@ * `less@4.0.0` - Updated `less` to v4.1.1 - Fixed tests + +* `npm-mongo@3.9.1` + - `mongodb@3.6.10` + +* `accounts-base@2.0.1` + - Create index on `services.password.enroll.when` + - Blaze weak dependency updated to v2.5.0 + +* `facebook-oauth@1.9.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + +* `github-oauth@1.3.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + +* `google-oauth@1.3.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + +* `meetup-oauth@1.1.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + +* `meteor-developer-oauth@1.3.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + +* `weibo-oauth@1.3.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + +* `oauth1@1.4.1` + - Allow usage of `http` package both v1 and v2 for backward compatibility + - Blaze weak dependency updated to v2.5.0 + +* `ddp-server@2.4.1` + - Fix a bug where `testMessageOnConnect` has always been sent + +* `accounts-password@2.0.1` + - Fix use of `isEnroll` in reset password + +* `mdg:geolocation@1.3.1` + - Fixed API to work with Meteor 2.3+ + +* `mdg:reload-on-resume@1.0.5` + - Fixed API to work with Meteor 2.3+ + +## v2.3.5, 2021-08-12 + +#### Highlights + +* Updated Node.js per the [August security release](https://nodejs.org/en/blog/vulnerability/aug-2021-security-releases/) +* Includes same improvements as in Meteor v2.2.3 + - Typescript updated to [v4.3.5](https://github.com/Microsoft/TypeScript/releases/tag/v4.3.5) + - `@meteorjs/babel@7.12.0` + +#### Meteor Version Release + +* `meteor-tool@2.3.5` + - Node.js updated to [v14.17.5](https://nodejs.org/en/blog/release/v14.17.5/) + - Typescript updated to [v4.3.5](https://github.com/Microsoft/TypeScript/releases/tag/v4.3.5) + - `@meteorjs/babel@7.12.0` + - Fix broken source maps in VSCode - [PR](https://github.com/meteor/meteor/pull/11584) ## v2.3.4, 2021-08-03 @@ -290,6 +359,32 @@ * `react-fast-refresh@0.1.1` - Fixed the package to work in IE11 +## v2.2.3, 2021-08-12 + +#### Highlights + +* Security update to Node.js [12.22.5](https://nodejs.org/en/blog/release/v12.22.5/) +* Typescript updated to [v4.3.5](https://github.com/Microsoft/TypeScript/releases/tag/v4.3.5) + +#### Meteor Version Release + +* `meteor-tool@2.3.3` + - Updated Node.js to 12.22.5 per [Node security update](https://nodejs.org/en/blog/vulnerability/aug-2021-security-releases/) + - Typescript updated to [v4.3.5](https://github.com/Microsoft/TypeScript/releases/tag/v4.3.5) + - `@meteorjs/babel@7.12.0` + +* `@meteorjs/babel@7.12.0` && `@meteorjs/babel@7.13.0` + - Dependencies updated to their latest versions + +* `babel-compile@7.7.0` + - `@meteorjs/babel@7.12.0` + +* `ecmascript@0.15.3` + - Typescript and Babel version bump + +* `typescript@4.3.5` + - [`typescript@4.3.5`](https://github.com/Microsoft/TypeScript/releases/tag/v4.3.5) + ## v2.2.2, 2021-08-02 #### Highlights diff --git a/README.md b/README.md index 75e9a8b15f..fd322c5f93 100644 --- a/README.md +++ b/README.md @@ -25,13 +25,7 @@ Are you looking for examples? Check this [meteor/examples](https://github.com/me ## Quick Start -On Linux/macOS, use this line: - -```bash -curl https://install.meteor.com/ | sh -``` - -On Windows, use this line: +On Linux/macOS/Windows, use this line: ```bash npm install -g meteor @@ -39,6 +33,12 @@ npm install -g meteor Visit the official [install page](https://www.meteor.com/developers/install) to learn more. +Alternatively, on macOS and Linux you can use: + +```bash +curl https://install.meteor.com/ | sh +``` + Create a project: ```bash diff --git a/meteor b/meteor index 7827d36dc8..bfa3eca628 100755 --- a/meteor +++ b/meteor @@ -1,6 +1,6 @@ #!/usr/bin/env bash -BUNDLE_VERSION=14.17.4.2 +BUNDLE_VERSION=14.17.6.0 # OS Check. Put here because here is where we download the precompiled # bundles that are arch specific. diff --git a/npm-packages/meteor-installer/README.md b/npm-packages/meteor-installer/README.md index 45d1913654..b2604ba2b7 100644 --- a/npm-packages/meteor-installer/README.md +++ b/npm-packages/meteor-installer/README.md @@ -1,8 +1,8 @@ -## Windows Meteor Installer +## Meteor Installer Requires [Node.js](https://nodejs.org/) 12 or newer. -Install Meteor on Windows by running: +Install Meteor by running: ```bash npm install -g meteor @@ -17,9 +17,10 @@ meteor-installer uninstall npm uninstall -g meteor ``` -The installer runs faster when [Windows Developer Mode](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development) is enabled. The installation extracts a large number of small files, which Windows Defender can cause to be very slow. +On Windows,The installer runs faster when [Windows Developer Mode](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development) is enabled. The installation extracts a large number of small files, which Windows Defender can cause to be very slow. -It is not recommended to run the installer and `meteor` as administrator. Otherwise, if the administrator is a separate user the `meteor` command might not always be found. +It is not recommended running the installer and `meteor` as administrator. Otherwise, if the administrator is a separate user the `meteor` command might not always be found. If your current setup needs administrator rights to use npm install -g (sudo), you will need to run it with "sudo npm install -g meteor --unsafe-perm". +We strongly advise against this. You can always change your npm modules permissions to your current user, more info [here](https://docs.npmjs.com/resolving-eacces-permissions-errors-when-installing-packages-globally): If you use a node version manager that uses a separate global `node_modules` folder for each Node version, you will need to re-install the `meteor` npm package when changing to a Node version for the first time. Otherwise, the `meteor` command will no longer be found. @@ -32,3 +33,7 @@ If you use a node version manager that uses a separate global `node_modules` fol | 2.3.2 | 2.3.1 | | 2.3.3 | 2.3.2 | | 2.3.4 | 2.3.4 | +| 2.3.5 | 2.3.5 | +| 2.3.6 | 2.3.5 | +| 2.3.7 | 2.3.6 | + diff --git a/npm-packages/meteor-installer/cli.js b/npm-packages/meteor-installer/cli.js old mode 100644 new mode 100755 diff --git a/npm-packages/meteor-installer/config.js b/npm-packages/meteor-installer/config.js index b82f006ee0..9fa3561905 100644 --- a/npm-packages/meteor-installer/config.js +++ b/npm-packages/meteor-installer/config.js @@ -1,19 +1,33 @@ const path = require('path'); +const os = require('os'); -const METEOR_LATEST_VERSION = '2.3.4'; - +const METEOR_LATEST_VERSION = '2.3.6'; +const sudoUser = process.env.SUDO_USER || ''; +function isRoot() { + return process.getuid && process.getuid() === 0; +} const localAppData = process.env.LOCALAPPDATA; +const isWindows = () => os.platform() === 'win32'; +const isMac = () => os.platform() === 'darwin'; +const rootPath = isWindows() + ? localAppData + : `${isRoot() ? `/home/${sudoUser}` : os.homedir()}`; -if (!localAppData) { +if (isWindows() && !localAppData) { throw new Error('LOCALAPPDATA env var is not set.'); } const meteorLocalFolder = '.meteor'; -const meteorPath = path.resolve(localAppData, meteorLocalFolder); +const meteorPath = path.resolve(rootPath, meteorLocalFolder); module.exports = { - extractPath: localAppData, + extractPath: rootPath, meteorPath, release: process.env.INSTALL_METEOR_VERSION || METEOR_LATEST_VERSION, - startedPath: path.resolve(localAppData, '.meteor-install-started.txt'), -} + rootPath, + sudoUser, + startedPath: path.resolve(rootPath, '.meteor-install-started.txt'), + isWindows, + isMac, + isRoot, +}; diff --git a/npm-packages/meteor-installer/extract.js b/npm-packages/meteor-installer/extract.js index 560e02d292..e2abe6ae8a 100644 --- a/npm-packages/meteor-installer/extract.js +++ b/npm-packages/meteor-installer/extract.js @@ -3,68 +3,83 @@ const sevenBin = require('7zip-bin'); const Seven = require('node-7z'); const fs = require('fs'); const { resolve, dirname } = require('path'); +const child_process = require('child_process'); +const { isMac } = require('./config.js') -function extractWith7Zip (tarPath, destination, onProgress) { +function extractWith7Zip(tarPath, destination, onProgress) { return new Promise((resolve, reject) => { const stream = Seven.extractFull(tarPath, destination, { $progress: true, $bin: sevenBin.path7za, }); - stream.on('progress', function (progress) { + stream.on('progress', function(progress) { onProgress(progress); }); - stream.on('error', function (err) { + stream.on('error', function(err) { return reject(err); }); - - stream.on('end', function () { + + stream.on('end', function() { return resolve(); }); - }) + }); } function createSymlinks(symlinks, baseDir) { symlinks.forEach(({ path, linkPath }) => { try { - let resolveBase = resolve(baseDir, dirname(path)) + let resolveBase = resolve(baseDir, dirname(path)); const result = fs.statSync(resolve(resolveBase, linkPath)); if (result.isDirectory()) { fs.symlinkSync(linkPath, path, 'junction'); } else { - fs.copyFileSync( - resolve(resolveBase, linkPath), - resolve(baseDir, path), - ) + fs.copyFileSync(resolve(resolveBase, linkPath), resolve(baseDir, path)); } } catch (e) { console.log(path, linkPath); console.error(e); throw new Error('Unable to create symlink'); } - }) + }); } -function extractWithTar (tarPath, destination, onProgress) { - let symlinks = []; +function extractWithNativeTar(tarPath, destination, onProgress) { + child_process.execSync( + `tar -xf "${tarPath}" ${ + !isMac() ? `--checkpoint-action=ttyout="#%u: %T \r"` : `` + } -C "${destination}"`, + { + cwd: process.cwd(), + env: process.env, + stdio: [process.stdin, process.stdout, process.stderr], + encoding: 'utf-8', + } + ); +} - let total = 0; - // This takes a few seconds, but lets us show the progress - tar.t({ - sync: true, - file: tarPath, - onentry() { - total += 1; - } - }); +function extractWithTar(tarPath, destination, onProgress) { + let symlinks = []; - let started = 0; - let timeout = null; + let total = 0; + // This takes a few seconds, but lets us show the progress + tar.t({ + sync: true, + file: tarPath, + onentry() { + total += 1; + }, + }); - return new Promise((resolve, reject) => { - tar.x({ + let started = 0; + let timeout = null; + + return new Promise((resolve, reject) => { + tar.x( + { file: tarPath, + preservePaths: true, cwd: destination, filter(path, entry) { if (entry.type === 'SymbolicLink') { @@ -89,8 +104,9 @@ function extractWithTar (tarPath, destination, onProgress) { }); }, 300); } - } - }, (err) => { + }, + }, + err => { if (timeout) { clearTimeout(timeout); } @@ -100,11 +116,13 @@ function extractWithTar (tarPath, destination, onProgress) { } createSymlinks(symlinks, destination); resolve(); - }); - }); + } + ); + }); } module.exports = { extractWithTar, extractWith7Zip, -} + extractWithNativeTar, +}; diff --git a/npm-packages/meteor-installer/install.js b/npm-packages/meteor-installer/install.js index 5a5875512b..4fc74938b1 100644 --- a/npm-packages/meteor-installer/install.js +++ b/npm-packages/meteor-installer/install.js @@ -4,26 +4,46 @@ const Seven = require('node-7z'); const path = require('path'); const sevenBin = require('7zip-bin'); const fs = require('fs'); +const child_process = require('child_process'); +const fsPromises = fs.promises; const tmp = require('tmp'); const os = require('os'); -const { meteorPath, release, startedPath, extractPath } = require('./config.js'); +const { + meteorPath, + release, + startedPath, + extractPath, + isWindows, + isRoot, + rootPath, + sudoUser, +} = require('./config.js'); const { uninstall } = require('./uninstall'); -const { extractWithTar, extractWith7Zip } = require('./extract.js'); +const { + extractWithTar, + extractWith7Zip, + extractWithNativeTar, +} = require('./extract.js'); -process.on('unhandledRejection', (err) => { +process.on('unhandledRejection', err => { throw err; }); -if (os.platform() !== 'win32') { - console.error('Can only install on Windows'); - process.exit(1); -} - if (os.arch() !== 'x64') { console.error('The current architecture is not supported:', os.arch()); process.exit(1); } +const downloadPlatform = { + win32: 'windows', + darwin: 'osx', + linux: 'linux', +}; + +const url = `https://packages.meteor.com/bootstrap-link?arch=os.${ + downloadPlatform[os.platform()] +}.x86_64&release=${release}`; + const tempPath = tmp.dirSync().name; const tarGzName = 'meteor.tar.gz'; const tarName = 'meteor.tar'; @@ -35,9 +55,15 @@ if (fs.existsSync(startedPath)) { console.log('It seems the previous installation of Meteor did not succeed.'); uninstall(); console.log(''); -} else if (fs.existsSync(meteorPath) ) { +} else if (fs.existsSync(meteorPath)) { console.log('Meteor is already installed at', meteorPath); - console.log('If you want to reinstall, delete that folder and run this command again'); + console.log( +`If you want to reinstall it, run: + + $ meteor-installer uninstall + $ meteor-installer install +` + ); process.exit(); } @@ -51,8 +77,8 @@ try { fs.writeFileSync(target, ''); fs.symlinkSync(target, symlinkPath, 'file'); - fs.unlinkSync(symlinkPath) - fs.unlinkSync(target) + fs.unlinkSync(symlinkPath); + fs.unlinkSync(target); canCreateSymlinks = true; } catch (e) { if (e.code === 'EPERM') { @@ -63,39 +89,53 @@ try { console.log('Assuming unable to create symlinks'); } } - download(); function download() { const start = Date.now(); - const downloadProgress = new cliProgress.SingleBar({ - format: 'Downloading |{bar}| {percentage}%', - clearOnComplete: true, - }, cliProgress.Presets.shades_classic); + const downloadProgress = new cliProgress.SingleBar( + { + format: 'Downloading |{bar}| {percentage}%', + clearOnComplete: true, + }, + cliProgress.Presets.shades_classic + ); downloadProgress.start(100, 0); - const url = `https://packages.meteor.com/bootstrap-link?arch=os.windows.x86_64&release=${release}` const dl = new DownloaderHelper(url, tempPath, { retry: { maxRetries: 5, delay: 5000 }, override: true, - fileName: tarGzName + fileName: tarGzName, }); dl.on('progress', ({ progress }) => { - downloadProgress.update(progress) + downloadProgress.update(progress); }); - dl.on('end', () => { + dl.on('end', async () => { downloadProgress.update(100); downloadProgress.stop(); const end = Date.now(); console.log(`=> Meteor Downloaded in ${(end - start) / 1000}s`); - const exists = fs.existsSync(path.resolve(tempPath, tarGzName)) + const exists = fs.existsSync(path.resolve(tempPath, tarGzName)); if (!exists) { throw new Error('meteor.tar.gz does not exist'); } - decompress(); + if (isWindows()) { + decompress(); + return; + } + + fs.writeFileSync(startedPath, 'Meteor install started'); + console.log('=> Extracting the tarball, this may take some time'); + const extractStart = Date.now(); + await extractWithNativeTar(path.resolve(tempPath, tarGzName), extractPath); + const extractEnd = Date.now(); + console.log( + `=> Meteor extracted in ${(extractEnd - extractStart) / 1000}s` + ); + await setup(); }); dl.start(); @@ -103,21 +143,24 @@ function download() { function decompress() { const start = Date.now(); - const decompressProgress = new cliProgress.SingleBar({ - format: 'Decompressing |{bar}| {percentage}%', - clearOnComplete: true, - }, cliProgress.Presets.shades_classic); + const decompressProgress = new cliProgress.SingleBar( + { + format: 'Decompressing |{bar}| {percentage}%', + clearOnComplete: true, + }, + cliProgress.Presets.shades_classic + ); decompressProgress.start(100, 0); const myStream = Seven.extract(path.resolve(tempPath, tarGzName), tempPath, { $progress: true, $bin: sevenBin.path7za, }); - myStream.on('progress', function (progress) { - decompressProgress.update(progress.percent) + myStream.on('progress', function(progress) { + decompressProgress.update(progress.percent); }); - myStream.on('end', function () { + myStream.on('end', function() { decompressProgress.update(100); decompressProgress.stop(); const end = Date.now(); @@ -130,12 +173,15 @@ async function extract() { const start = Date.now(); fs.writeFileSync(startedPath, 'Meteor install started'); - const decompressProgress = new cliProgress.SingleBar({ - format: 'Extracting |{bar}| {percentage}% - {fileCount} files completed', - clearOnComplete: true, - }, cliProgress.Presets.shades_classic); + const decompressProgress = new cliProgress.SingleBar( + { + format: 'Extracting |{bar}| {percentage}% - {fileCount} files completed', + clearOnComplete: true, + }, + cliProgress.Presets.shades_classic + ); decompressProgress.start(100, 0, { - fileCount: 0 + fileCount: 0, }); let tarPath = path.resolve(tempPath, tarName); @@ -144,20 +190,43 @@ async function extract() { // is done in extractWithTar if (canCreateSymlinks) { await extractWith7Zip(tarPath, extractPath, ({ percent, fileCount }) => { - decompressProgress.update(percent, { fileCount }) + decompressProgress.update(percent, { fileCount }); }); } else { await extractWithTar(tarPath, extractPath, ({ percent, fileCount }) => { - decompressProgress.update(percent, { fileCount }) + decompressProgress.update(percent, { fileCount }); }); } decompressProgress.stop(); const end = Date.now(); console.log(`=> Meteor Extracted ${(end - start) / 1000}s`); + await setup(); +} +async function setup() { fs.unlinkSync(startedPath); + await setupExecPath(); showGettingStarted(); } +async function setupExecPath() { + if (isWindows()) { + child_process.execSync(`setx path "${meteorPath}/;%path%`); + return; + } + const bashrcFile = + process.env.SHELL && process.env.SHELL.includes('zsh') + ? '.zshrc' + : '.bashrc'; + await fsPromises.appendFile( + `${rootPath}/${bashrcFile}`, + `export PATH=${meteorPath}:$PATH\n` + ); + if (!isRoot()) { + return; + } + // if we identified sudo is being used, we need to change the ownership of the meteorpath folder + child_process.execSync(`chown -R ${sudoUser} "${meteorPath}"`); +} function showGettingStarted() { const message = ` @@ -165,6 +234,8 @@ function showGettingStarted() { Meteor has been installed! +*You might need to open a new terminal windows to have access to the meteor command.* + To get started fast: $ meteor create ~/my_cool_app diff --git a/npm-packages/meteor-installer/meteor.bat b/npm-packages/meteor-installer/meteor.bat deleted file mode 100644 index 78c38bf709..0000000000 --- a/npm-packages/meteor-installer/meteor.bat +++ /dev/null @@ -1,6 +0,0 @@ -@echo off -SETLOCAL -SET METEOR_INSTALLATION=%LOCALAPPDATA%\.meteor -"%METEOR_INSTALLATION%\meteor.bat" %* -ENDLOCAL -EXIT /b %ERRORLEVEL% diff --git a/npm-packages/meteor-installer/package.json b/npm-packages/meteor-installer/package.json index 944aced191..56c901c563 100644 --- a/npm-packages/meteor-installer/package.json +++ b/npm-packages/meteor-installer/package.json @@ -1,6 +1,6 @@ { "name": "meteor", - "version": "2.3.4", + "version": "2.3.7", "description": "Install Meteor on Windows", "main": "install.js", "scripts": { @@ -18,7 +18,6 @@ "tmp": "^0.1.0" }, "bin": { - "meteor": "meteor.bat", "meteor-installer": "cli.js" } } diff --git a/packages/accounts-base/accounts_server.js b/packages/accounts-base/accounts_server.js index 740ed9eefc..cc4afc4014 100644 --- a/packages/accounts-base/accounts_server.js +++ b/packages/accounts-base/accounts_server.js @@ -1610,4 +1610,5 @@ const setupUsersCollection = users => { users._ensureIndex("services.resume.loginTokens.when", { sparse: true }); // For expiring password tokens users._ensureIndex('services.password.reset.when', { sparse: true }); + users._ensureIndex('services.password.enroll.when', { sparse: true }); }; diff --git a/packages/accounts-base/package.js b/packages/accounts-base/package.js index 7207afac1b..9a15ea3df3 100644 --- a/packages/accounts-base/package.js +++ b/packages/accounts-base/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "A user account system", - version: "2.0.0", + version: "2.0.1", }); Package.onUse(api => { @@ -28,7 +28,7 @@ Package.onUse(api => { // If the 'blaze' package is loaded, we'll define some helpers like // {{currentUser}}. If not, no biggie. - api.use('blaze@2.3.4', 'client', {weak: true}); + api.use('blaze@2.5.0', 'client', {weak: true}); // Allow us to detect 'autopublish', and publish some Meteor.users fields if // it's loaded. diff --git a/packages/accounts-password/package.js b/packages/accounts-password/package.js index a443df6e55..24c9097d54 100644 --- a/packages/accounts-password/package.js +++ b/packages/accounts-password/package.js @@ -5,12 +5,12 @@ Package.describe({ // 2.2.x in the future. The version was also bumped to 2.0.0 temporarily // during the Meteor 1.5.1 release process, so versions 2.0.0-beta.2 // through -beta.5 and -rc.0 have already been published. - version: "2.0.0" + version: "2.0.1" }); Npm.depends({ 'bcrypt': '5.0.1' -}) +}); Package.onUse(api => { diff --git a/packages/accounts-password/password_server.js b/packages/accounts-password/password_server.js index bd851ac1dd..4ee3468791 100644 --- a/packages/accounts-password/password_server.js +++ b/packages/accounts-password/password_server.js @@ -526,7 +526,7 @@ Accounts.generateResetToken = (userId, email, reason, extraTokenData) => { if (extraTokenData) { Object.assign(tokenRecord, extraTokenData); - } + } // if this method is called from the enroll account work-flow then // store the token record in 'services.password.enroll' db field // else store the token record in in 'services.password.reset' db field @@ -722,7 +722,7 @@ Meteor.methods({resetPassword: function (...args) { emails: 1, }} ); - + let isEnroll = false; // if token is in services.password.reset db field implies // this method is was not called from enroll account workflow @@ -746,9 +746,9 @@ Meteor.methods({resetPassword: function (...args) { } else { tokenRecord = user.services.password.reset; } - const { when, reason, email } = tokenRecord; + const { when, email } = tokenRecord; let tokenLifetimeMs = Accounts._getPasswordResetTokenLifetimeMs(); - if (reason === "enroll") { + if (isEnroll) { tokenLifetimeMs = Accounts._getPasswordEnrollTokenLifetimeMs(); } const currentTimeMs = Date.now(); @@ -760,7 +760,7 @@ Meteor.methods({resetPassword: function (...args) { error: new Meteor.Error(403, "Token has invalid email address") }; - const hashed = hashPassword(newPassword); + const hashed = hashPassword(newPassword); // NOTE: We're about to invalidate tokens on the user, who we might be // logged in as. Make sure to avoid logging ourselves out if this @@ -778,7 +778,7 @@ Meteor.methods({resetPassword: function (...args) { // - Verifying their email, since they got the password reset via email. let affectedRecords = {}; // if reason is enroll then check services.password.enroll.token field for affected records - if(reason === 'enroll') { + if(isEnroll) { affectedRecords = Meteor.users.update( { _id: user._id, diff --git a/packages/babel-compiler/.npm/package/npm-shrinkwrap.json b/packages/babel-compiler/.npm/package/npm-shrinkwrap.json index 42d1625ade..9e36d0da87 100644 --- a/packages/babel-compiler/.npm/package/npm-shrinkwrap.json +++ b/packages/babel-compiler/.npm/package/npm-shrinkwrap.json @@ -2,19 +2,19 @@ "lockfileVersion": 1, "dependencies": { "@babel/code-frame": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", - "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.14.5.tgz", + "integrity": "sha512-9pzDqyc6OLDaqe+zbACgFkb6fKMNG6CObKpnYXChRsvYGyEdc7CA2BaqeOM+vOtCS5ndmJicPJhKAwYRI6UfFw==" }, "@babel/compat-data": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.14.0.tgz", - "integrity": "sha512-vu9V3uMM/1o5Hl5OekMUowo3FqXLJSw+s+66nt0fSWVWTtmosdzn45JHOB3cPtZoe6CTBDzvSw0RdOY85Q37+Q==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.15.0.tgz", + "integrity": "sha512-0NqAC1IJE0S0+lL1SWFMxMkz1pKCNCjI4tr2Zx4LJSXxCLAdr6KyArnY+sno5m3yH9g737ygOyPABDsnXkpxiA==" }, "@babel/core": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.14.3.tgz", - "integrity": "sha512-jB5AmTKOCSJIZ72sd78ECEhuPiDMKlQdDI/4QRI6lzYATx5SSogS1oQA2AoPecRCknm30gHi2l+QVvNUu3wZAg==", + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.15.0.tgz", + "integrity": "sha512-tXtmTminrze5HEUPn/a0JtOzzfp0nk+UEXQ/tqIJo3WDGypl/2OFQEMll/zSFU8f/lfmfLXvTaORHF3cfXIQMw==", "dependencies": { "json5": { "version": "2.2.0", @@ -24,34 +24,34 @@ } }, "@babel/generator": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.14.3.tgz", - "integrity": "sha512-bn0S6flG/j0xtQdz3hsjJ624h3W0r3llttBMfyHX3YrZ/KtLYr15bjA0FXkgW7FpvrDuTuElXeVjiKlYRpnOFA==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.15.0.tgz", + "integrity": "sha512-eKl4XdMrbpYvuB505KTta4AV9g+wWzmVBW69tX0H2NwKVKd2YJbKgyK6M8j/rgLbmHOYJn6rUklV677nOyJrEQ==" }, "@babel/helper-annotate-as-pure": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz", - "integrity": "sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.14.5.tgz", + "integrity": "sha512-EivH9EgBIb+G8ij1B2jAwSH36WnGvkQSEC6CkX/6v6ZFlw5fVOHvsgGF4uiEHO2GzMvunZb6tDLQEQSdrdocrA==" }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz", - "integrity": "sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.14.5.tgz", + "integrity": "sha512-YTA/Twn0vBXDVGJuAX6PwW7x5zQei1luDDo2Pl6q1qZ7hVNl0RZrhHCQG/ArGpR29Vl7ETiB8eJyrvpuRp300w==" }, "@babel/helper-compilation-targets": { - "version": "7.13.16", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.13.16.tgz", - "integrity": "sha512-3gmkYIrpqsLlieFwjkGgLaSHmhnvlAYzZLlYVjlW+QwI+1zE17kGxuJGmIqDQdYp56XdmGeD+Bswx0UTyG18xA==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.15.0.tgz", + "integrity": "sha512-h+/9t0ncd4jfZ8wsdAsoIxSa61qhBYlycXiHWqJaQBCXAhDCMbPRSMTGnZIkkmt1u4ag+UQmuqcILwqKzZ4N2A==" }, "@babel/helper-create-class-features-plugin": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.14.3.tgz", - "integrity": "sha512-BnEfi5+6J2Lte9LeiL6TxLWdIlEv9Woacc1qXzXBgbikcOzMRM2Oya5XGg/f/ngotv1ej2A/b+3iJH8wbS1+lQ==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.15.0.tgz", + "integrity": "sha512-MdmDXgvTIi4heDVX/e9EFfeGpugqm9fobBVg/iioE8kueXrOHdRDe36FAY7SnE9xXLVeYCoJR/gdrBEIHRC83Q==" }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.3.tgz", - "integrity": "sha512-JIB2+XJrb7v3zceV2XzDhGIB902CmKGSpSl4q2C6agU9SNLG/2V1RtFRGPG1Ajh9STj3+q6zJMOC+N/pp2P9DA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.14.5.tgz", + "integrity": "sha512-TLawwqpOErY2HhWbGJ2nZT5wSkR192QpN+nBg1THfBfftrlvOh+WbhrxXCH4q4xJ9Gl16BGPR/48JA+Ryiho/A==" }, "@babel/helper-define-polyfill-provider": { "version": "0.2.3", @@ -59,134 +59,139 @@ "integrity": "sha512-RH3QDAfRMzj7+0Nqu5oqgO5q9mFtQEVvCRsi8qCEfzLR9p2BHfn5FzhSB2oj1fF7I2+DcTORkYaQ6aTR9Cofew==" }, "@babel/helper-explode-assignable-expression": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.13.0.tgz", - "integrity": "sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.14.5.tgz", + "integrity": "sha512-Htb24gnGJdIGT4vnRKMdoXiOIlqOLmdiUYpAQ0mYfgVT/GDm8GOYhgi4GL+hMKrkiPRohO4ts34ELFsGAPQLDQ==" }, "@babel/helper-function-name": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.2.tgz", - "integrity": "sha512-NYZlkZRydxw+YT56IlhIcS8PAhb+FEUiOzuhFTfqDyPmzAhRge6ua0dQYT/Uh0t/EDHq05/i+e5M2d4XvjgarQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.14.5.tgz", + "integrity": "sha512-Gjna0AsXWfFvrAuX+VKcN/aNNWonizBj39yGwUzVDVTlMYJMK2Wp6xdpy72mfArFq5uK+NOuexfzZlzI1z9+AQ==" }, "@babel/helper-get-function-arity": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", - "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.14.5.tgz", + "integrity": "sha512-I1Db4Shst5lewOM4V+ZKJzQ0JGGaZ6VY1jYvMghRjqs6DWgxLCIyFt30GlnKkfUeFLpJt2vzbMVEXVSXlIFYUg==" + }, + "@babel/helper-hoist-variables": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.14.5.tgz", + "integrity": "sha512-R1PXiz31Uc0Vxy4OEOm07x0oSjKAdPPCh3tPivn/Eo8cvz6gveAeuyUUPB21Hoiif0uoPQSSdhIPS3352nvdyQ==" }, "@babel/helper-member-expression-to-functions": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.13.12.tgz", - "integrity": "sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.15.0.tgz", + "integrity": "sha512-Jq8H8U2kYiafuj2xMTPQwkTBnEEdGKpT35lJEQsRRjnG0LW3neucsaMWLgKcwu3OHKNeYugfw+Z20BXBSEs2Lg==" }, "@babel/helper-module-imports": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.13.12.tgz", - "integrity": "sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.14.5.tgz", + "integrity": "sha512-SwrNHu5QWS84XlHwGYPDtCxcA0hrSlL2yhWYLgeOc0w7ccOl2qv4s/nARI0aYZW+bSwAL5CukeXA47B/1NKcnQ==" }, "@babel/helper-module-transforms": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.14.2.tgz", - "integrity": "sha512-OznJUda/soKXv0XhpvzGWDnml4Qnwp16GN+D/kZIdLsWoHj05kyu8Rm5kXmMef+rVJZ0+4pSGLkeixdqNUATDA==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.15.0.tgz", + "integrity": "sha512-RkGiW5Rer7fpXv9m1B3iHIFDZdItnO2/BLfWVW/9q7+KqQSDY5kUfQEbzdXM1MVhJGcugKV7kRrNVzNxmk7NBg==" }, "@babel/helper-optimise-call-expression": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", - "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.14.5.tgz", + "integrity": "sha512-IqiLIrODUOdnPU9/F8ib1Fx2ohlgDhxnIDU7OEVi+kAbEZcyiF7BLU8W6PfvPi9LzztjS7kcbzbmL7oG8kD6VA==" }, "@babel/helper-plugin-utils": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.13.0.tgz", - "integrity": "sha512-ZPafIPSwzUlAoWT8DKs1W2VyF2gOWthGd5NGFMsBcMMol+ZhK+EQY/e6V96poa6PA/Bh+C9plWN0hXO1uB8AfQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz", + "integrity": "sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ==" }, "@babel/helper-remap-async-to-generator": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.13.0.tgz", - "integrity": "sha512-pUQpFBE9JvC9lrQbpX0TmeNIy5s7GnZjna2lhhcHC7DzgBs6fWn722Y5cfwgrtrqc7NAJwMvOa0mKhq6XaE4jg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.14.5.tgz", + "integrity": "sha512-rLQKdQU+HYlxBwQIj8dk4/0ENOUEhA/Z0l4hN8BexpvmSMN9oA9EagjnhnDpNsRdWCfjwa4mn/HyBXO9yhQP6A==" }, "@babel/helper-replace-supers": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.14.3.tgz", - "integrity": "sha512-Rlh8qEWZSTfdz+tgNV/N4gz1a0TMNwCUcENhMjHTHKp3LseYH5Jha0NSlyTQWMnjbYcwFt+bqAMqSLHVXkQ6UA==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.15.0.tgz", + "integrity": "sha512-6O+eWrhx+HEra/uJnifCwhwMd6Bp5+ZfZeJwbqUTuqkhIT6YcRhiZCOOFChRypOIe0cV46kFrRBlm+t5vHCEaA==" }, "@babel/helper-simple-access": { - "version": "7.13.12", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.13.12.tgz", - "integrity": "sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==" + "version": "7.14.8", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.14.8.tgz", + "integrity": "sha512-TrFN4RHh9gnWEU+s7JloIho2T76GPwRHhdzOWLqTrMnlas8T9O7ec+oEDNsRXndOmru9ymH9DFrEOxpzPoSbdg==" }, "@babel/helper-skip-transparent-expression-wrappers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", - "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.14.5.tgz", + "integrity": "sha512-dmqZB7mrb94PZSAOYtr+ZN5qt5owZIAgqtoTuqiFbHFtxgEcmQlRJVI+bO++fciBunXtB6MK7HrzrfcAzIz2NQ==" }, "@babel/helper-split-export-declaration": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", - "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.14.5.tgz", + "integrity": "sha512-hprxVPu6e5Kdp2puZUmvOGjaLv9TCe58E/Fl6hRq4YiVQxIcNvuq6uTM2r1mT/oPskuS9CgR+I94sqAYv0NGKA==" }, "@babel/helper-validator-identifier": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz", - "integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==" + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.9.tgz", + "integrity": "sha512-pQYxPY0UP6IHISRitNe8bsijHex4TWZXi2HwKVsjPiltzlhse2znVcm9Ace510VT1kxIHjGJCZZQBX2gJDbo0g==" }, "@babel/helper-validator-option": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.17.tgz", - "integrity": "sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz", + "integrity": "sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow==" }, "@babel/helper-wrap-function": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.13.0.tgz", - "integrity": "sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.14.5.tgz", + "integrity": "sha512-YEdjTCq+LNuNS1WfxsDCNpgXkJaIyqco6DAelTUjT4f2KIWC1nBcaCaSdHTBqQVLnTBexBcVcFhLSU1KnYuePQ==" }, "@babel/helpers": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.14.0.tgz", - "integrity": "sha512-+ufuXprtQ1D1iZTO/K9+EBRn+qPWMJjZSw/S0KlFrxCw4tkrzv9grgpDHkY9MeQTjTY8i2sp7Jep8DfU6tN9Mg==" + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.15.3.tgz", + "integrity": "sha512-HwJiz52XaS96lX+28Tnbu31VeFSQJGOeKHJeaEPQlTl7PnlhFElWPj8tUXtqFIzeN86XxXoBr+WFAyK2PPVz6g==" }, "@babel/highlight": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz", - "integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", + "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==" }, "@babel/parser": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.14.3.tgz", - "integrity": "sha512-7MpZDIfI7sUC5zWo2+foJ50CSI5lcqDehZ0lVgIhSi4bFEk94fLAKlF3Q0nzSQQ+ca0lm+O6G9ztKVBeu8PMRQ==" + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.15.3.tgz", + "integrity": "sha512-O0L6v/HvqbdJawj0iBEfVQMc3/6WP+AeOsovsIgBFyJaG+W2w7eqvZB7puddATmWuARlm1SX7DwxJ/JJUnDpEA==" }, "@babel/plugin-proposal-async-generator-functions": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.2.tgz", - "integrity": "sha512-b1AM4F6fwck4N8ItZ/AtC4FP/cqZqmKRQ4FaTDutwSYyjuhtvsGEMLK4N/ztV/ImP40BjIDyMgBQAeAMsQYVFQ==" + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.14.9.tgz", + "integrity": "sha512-d1lnh+ZnKrFKwtTYdw320+sQWCTwgkB9fmUhNXRADA4akR6wLjaruSGnIEUjpt9HCOwTr4ynFTKu19b7rFRpmw==" }, "@babel/plugin-proposal-class-properties": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.13.0.tgz", - "integrity": "sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.14.5.tgz", + "integrity": "sha512-q/PLpv5Ko4dVc1LYMpCY7RVAAO4uk55qPwrIuJ5QJ8c6cVuAmhu7I/49JOppXL6gXf7ZHzpRVEUZdYoPLM04Gg==" }, "@babel/plugin-proposal-logical-assignment-operators": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.2.tgz", - "integrity": "sha512-1JAZtUrqYyGsS7IDmFeaem+/LJqujfLZ2weLR9ugB0ufUPjzf8cguyVT1g5im7f7RXxuLq1xUxEzvm68uYRtGg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.14.5.tgz", + "integrity": "sha512-YGn2AvZAo9TwyhlLvCCWxD90Xq8xJ4aSgaX3G5D/8DW94L8aaT+dS5cSP+Z06+rCJERGSr9GxMBZ601xoc2taw==" }, "@babel/plugin-proposal-nullish-coalescing-operator": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.2.tgz", - "integrity": "sha512-ebR0zU9OvI2N4qiAC38KIAK75KItpIPTpAtd2r4OZmMFeKbKJpUFLYP2EuDut82+BmYi8sz42B+TfTptJ9iG5Q==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.14.5.tgz", + "integrity": "sha512-gun/SOnMqjSb98Nkaq2rTKMwervfdAoz6NphdY0vTfuzMfryj+tDGb2n6UkDKwez+Y8PZDhE3D143v6Gepp4Hg==" }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.2.tgz", - "integrity": "sha512-hBIQFxwZi8GIp934+nj5uV31mqclC1aYDhctDu5khTi9PCCUOczyy0b34W0oE9U/eJXiqQaKyVsmjeagOaSlbw==" + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.14.7.tgz", + "integrity": "sha512-082hsZz+sVabfmDWo1Oct1u1AgbKbUAyVgmX4otIc7bdsRgHBXwTwb3DpDmD4Eyyx6DNiuz5UAATT655k+kL5g==" }, "@babel/plugin-proposal-optional-catch-binding": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.2.tgz", - "integrity": "sha512-XtkJsmJtBaUbOxZsNk0Fvrv8eiqgneug0A6aqLFZ4TSkar2L5dSXWcnUKHgmjJt49pyB/6ZHvkr3dPgl9MOWRQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.14.5.tgz", + "integrity": "sha512-3Oyiixm0ur7bzO5ybNcZFlmVsygSIQgdOa7cTfOYCMY+wEPAYhZAJxi3mixKFCTCKUhQXuCTtQ1MzrpL3WT8ZQ==" }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.2.tgz", - "integrity": "sha512-qQByMRPwMZJainfig10BoaDldx/+VDtNcrA7qdNaEOAj6VXud+gfrkA8j4CRAU5HjnWREXqIpSpH30qZX1xivA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.14.5.tgz", + "integrity": "sha512-ycz+VOzo2UbWNI1rQXxIuMOzrDdHGrI23fRiz/Si2R4kv2XZQ1BK8ccdHwehMKBlcH/joGW/tzrUmo67gbJHlQ==" }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", @@ -204,9 +209,9 @@ "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==" }, "@babel/plugin-syntax-jsx": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.13.tgz", - "integrity": "sha512-d4HM23Q1K7oq/SLNmG6mRt85l2csmQ0cHRaxRXjKW0YFdEXqlZ5kzFQKH5Uc3rDJECgu+yCRgPkG04Mm98R/1g==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.14.5.tgz", + "integrity": "sha512-ohuFIsOMXJnbOMRfX7/w7LocdR6R7whhuRD4ax8IipLcLPlZGJKkBxgHp++U4N/vKyU16/YDQr2f5seajD3jIw==" }, "@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", @@ -234,164 +239,164 @@ "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==" }, "@babel/plugin-transform-arrow-functions": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.13.0.tgz", - "integrity": "sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.14.5.tgz", + "integrity": "sha512-KOnO0l4+tD5IfOdi4x8C1XmEIRWUjNRV8wc6K2vz/3e8yAOoZZvsRXRRIF/yo/MAOFb4QjtAw9xSxMXbSMRy8A==" }, "@babel/plugin-transform-async-to-generator": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.13.0.tgz", - "integrity": "sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.14.5.tgz", + "integrity": "sha512-szkbzQ0mNk0rpu76fzDdqSyPu0MuvpXgC+6rz5rpMb5OIRxdmHfQxrktL8CYolL2d8luMCZTR0DpIMIdL27IjA==" }, "@babel/plugin-transform-block-scoped-functions": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz", - "integrity": "sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.14.5.tgz", + "integrity": "sha512-dtqWqdWZ5NqBX3KzsVCWfQI3A53Ft5pWFCT2eCVUftWZgjc5DpDponbIF1+c+7cSGk2wN0YK7HGL/ezfRbpKBQ==" }, "@babel/plugin-transform-block-scoping": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.14.2.tgz", - "integrity": "sha512-neZZcP19NugZZqNwMTH+KoBjx5WyvESPSIOQb4JHpfd+zPfqcH65RMu5xJju5+6q/Y2VzYrleQTr+b6METyyxg==" + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.15.3.tgz", + "integrity": "sha512-nBAzfZwZb4DkaGtOes1Up1nOAp9TDRRFw4XBzBBSG9QK7KVFmYzgj9o9sbPv7TX5ofL4Auq4wZnxCoPnI/lz2Q==" }, "@babel/plugin-transform-classes": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.2.tgz", - "integrity": "sha512-7oafAVcucHquA/VZCsXv/gmuiHeYd64UJyyTYU+MPfNu0KeNlxw06IeENBO8bJjXVbolu+j1MM5aKQtH1OMCNg==" + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.14.9.tgz", + "integrity": "sha512-NfZpTcxU3foGWbl4wxmZ35mTsYJy8oQocbeIMoDAGGFarAmSQlL+LWMkDx/tj6pNotpbX3rltIA4dprgAPOq5A==" }, "@babel/plugin-transform-computed-properties": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.13.0.tgz", - "integrity": "sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.14.5.tgz", + "integrity": "sha512-pWM+E4283UxaVzLb8UBXv4EIxMovU4zxT1OPnpHJcmnvyY9QbPPTKZfEj31EUvG3/EQRbYAGaYEUZ4yWOBC2xg==" }, "@babel/plugin-transform-destructuring": { - "version": "7.13.17", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.13.17.tgz", - "integrity": "sha512-UAUqiLv+uRLO+xuBKKMEpC+t7YRNVRqBsWWq1yKXbBZBje/t3IXCiSinZhjn/DC3qzBfICeYd2EFGEbHsh5RLA==" + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.14.7.tgz", + "integrity": "sha512-0mDE99nK+kVh3xlc5vKwB6wnP9ecuSj+zQCa/n0voENtP/zymdT4HH6QEb65wjjcbqr1Jb/7z9Qp7TF5FtwYGw==" }, "@babel/plugin-transform-exponentiation-operator": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz", - "integrity": "sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.14.5.tgz", + "integrity": "sha512-jFazJhMBc9D27o9jDnIE5ZErI0R0m7PbKXVq77FFvqFbzvTMuv8jaAwLZ5PviOLSFttqKIW0/wxNSDbjLk0tYA==" }, "@babel/plugin-transform-for-of": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.13.0.tgz", - "integrity": "sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.14.5.tgz", + "integrity": "sha512-CfmqxSUZzBl0rSjpoQSFoR9UEj3HzbGuGNL21/iFTmjb5gFggJp3ph0xR1YBhexmLoKRHzgxuFvty2xdSt6gTA==" }, "@babel/plugin-transform-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz", - "integrity": "sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.14.5.tgz", + "integrity": "sha512-ql33+epql2F49bi8aHXxvLURHkxJbSmMKl9J5yHqg4PLtdE6Uc48CH1GS6TQvZ86eoB/ApZXwm7jlA+B3kra7A==" }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.14.0.tgz", - "integrity": "sha512-EX4QePlsTaRZQmw9BsoPeyh5OCtRGIhwfLquhxGp5e32w+dyL8htOcDwamlitmNFK6xBZYlygjdye9dbd9rUlQ==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.15.0.tgz", + "integrity": "sha512-3H/R9s8cXcOGE8kgMlmjYYC9nqr5ELiPkJn4q0mypBrjhYQoc+5/Maq69vV4xRPWnkzZuwJPf5rArxpB/35Cig==" }, "@babel/plugin-transform-object-super": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz", - "integrity": "sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.14.5.tgz", + "integrity": "sha512-MKfOBWzK0pZIrav9z/hkRqIk/2bTv9qvxHzPQc12RcVkMOzpIKnFCNYJip00ssKWYkd8Sf5g0Wr7pqJ+cmtuFg==" }, "@babel/plugin-transform-parameters": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.2.tgz", - "integrity": "sha512-NxoVmA3APNCC1JdMXkdYXuQS+EMdqy0vIwyDHeKHiJKRxmp1qGSdb0JLEIoPRhkx6H/8Qi3RJ3uqOCYw8giy9A==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.14.5.tgz", + "integrity": "sha512-Tl7LWdr6HUxTmzQtzuU14SqbgrSKmaR77M0OKyq4njZLQTPfOvzblNKyNkGwOfEFCEx7KeYHQHDI0P3F02IVkA==" }, "@babel/plugin-transform-property-literals": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz", - "integrity": "sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.14.5.tgz", + "integrity": "sha512-r1uilDthkgXW8Z1vJz2dKYLV1tuw2xsbrp3MrZmD99Wh9vsfKoob+JTgri5VUb/JqyKRXotlOtwgu4stIYCmnw==" }, "@babel/plugin-transform-react-display-name": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.2.tgz", - "integrity": "sha512-zCubvP+jjahpnFJvPaHPiGVfuVUjXHhFvJKQdNnsmSsiU9kR/rCZ41jHc++tERD2zV+p7Hr6is+t5b6iWTCqSw==" + "version": "7.15.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.15.1.tgz", + "integrity": "sha512-yQZ/i/pUCJAHI/LbtZr413S3VT26qNrEm0M5RRxQJA947/YNYwbZbBaXGDrq6CG5QsZycI1VIP6d7pQaBfP+8Q==" }, "@babel/plugin-transform-react-jsx": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.3.tgz", - "integrity": "sha512-uuxuoUNVhdgYzERiHHFkE4dWoJx+UFVyuAl0aqN8P2/AKFHwqgUC5w2+4/PjpKXJsFgBlYAFXlUmDQ3k3DUkXw==" + "version": "7.14.9", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.14.9.tgz", + "integrity": "sha512-30PeETvS+AeD1f58i1OVyoDlVYQhap/K20ZrMjLmmzmC2AYR/G43D4sdJAaDAqCD3MYpSWbmrz3kES158QSLjw==" }, "@babel/plugin-transform-react-jsx-development": { - "version": "7.12.17", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.12.17.tgz", - "integrity": "sha512-BPjYV86SVuOaudFhsJR1zjgxxOhJDt6JHNoD48DxWEIxUCAMjV1ys6DYw4SDYZh0b1QsS2vfIA9t/ZsQGsDOUQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.14.5.tgz", + "integrity": "sha512-rdwG/9jC6QybWxVe2UVOa7q6cnTpw8JRRHOxntG/h6g/guAOe6AhtQHJuJh5FwmnXIT1bdm5vC2/5huV8ZOorQ==" }, "@babel/plugin-transform-react-pure-annotations": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.12.1.tgz", - "integrity": "sha512-RqeaHiwZtphSIUZ5I85PEH19LOSzxfuEazoY7/pWASCAIBuATQzpSVD+eT6MebeeZT2F4eSL0u4vw6n4Nm0Mjg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.14.5.tgz", + "integrity": "sha512-3X4HpBJimNxW4rhUy/SONPyNQHp5YRr0HhJdT2OH1BRp0of7u3Dkirc7x9FRJMKMqTBI079VZ1hzv7Ouuz///g==" }, "@babel/plugin-transform-regenerator": { - "version": "7.13.15", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.13.15.tgz", - "integrity": "sha512-Bk9cOLSz8DiurcMETZ8E2YtIVJbFCPGW28DJWUakmyVWtQSm6Wsf0p4B4BfEr/eL2Nkhe/CICiUiMOCi1TPhuQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.14.5.tgz", + "integrity": "sha512-NVIY1W3ITDP5xQl50NgTKlZ0GrotKtLna08/uGY6ErQt6VEQZXla86x/CTddm5gZdcr+5GSsvMeTmWA5Ii6pkg==" }, "@babel/plugin-transform-runtime": { - "version": "7.14.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.14.3.tgz", - "integrity": "sha512-t960xbi8wpTFE623ef7sd+UpEC5T6EEguQlTBJDEO05+XwnIWVfuqLw/vdLWY6IdFmtZE+65CZAfByT39zRpkg==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.15.0.tgz", + "integrity": "sha512-sfHYkLGjhzWTq6xsuQ01oEsUYjkHRux9fW1iUA68dC7Qd8BS1Unq4aZ8itmQp95zUzIcyR2EbNMTzAicFj+guw==" }, "@babel/plugin-transform-shorthand-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz", - "integrity": "sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.14.5.tgz", + "integrity": "sha512-xLucks6T1VmGsTB+GWK5Pl9Jl5+nRXD1uoFdA5TSO6xtiNjtXTjKkmPdFXVLGlK5A2/or/wQMKfmQ2Y0XJfn5g==" }, "@babel/plugin-transform-spread": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.13.0.tgz", - "integrity": "sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg==" + "version": "7.14.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.14.6.tgz", + "integrity": "sha512-Zr0x0YroFJku7n7+/HH3A2eIrGMjbmAIbJSVv0IZ+t3U2WUQUA64S/oeied2e+MaGSjmt4alzBCsK9E8gh+fag==" }, "@babel/plugin-transform-sticky-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz", - "integrity": "sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.14.5.tgz", + "integrity": "sha512-Z7F7GyvEMzIIbwnziAZmnSNpdijdr4dWt+FJNBnBLz5mwDFkqIXU9wmBcWWad3QeJF5hMTkRe4dAq2sUZiG+8A==" }, "@babel/plugin-transform-template-literals": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.13.0.tgz", - "integrity": "sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.14.5.tgz", + "integrity": "sha512-22btZeURqiepOfuy/VkFr+zStqlujWaarpMErvay7goJS6BWwdd6BY9zQyDLDa4x2S3VugxFb162IZ4m/S/+Gg==" }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz", - "integrity": "sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.14.5.tgz", + "integrity": "sha512-lXzLD30ffCWseTbMQzrvDWqljvZlHkXU+CnseMhkMNqU1sASnCsz3tSzAaH3vCUXb9PHeUb90ZT1BdFTm1xxJw==" }, "@babel/plugin-transform-unicode-regex": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz", - "integrity": "sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.14.5.tgz", + "integrity": "sha512-UygduJpC5kHeCiRw/xDVzC+wj8VaYSoKl5JNVmbP7MadpNinAm3SvZCxZ42H37KZBKztz46YC73i9yV34d0Tzw==" }, "@babel/preset-react": { - "version": "7.13.13", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.13.13.tgz", - "integrity": "sha512-gx+tDLIE06sRjKJkVtpZ/t3mzCDOnPG+ggHZG9lffUbX8+wC739x20YQc9V35Do6ZAxaUc/HhVHIiOzz5MvDmA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.14.5.tgz", + "integrity": "sha512-XFxBkjyObLvBaAvkx1Ie95Iaq4S/GUEIrejyrntQ/VCMKUYvKLoyKxOBzJ2kjA3b6rC9/KL6KXfDC2GqvLiNqQ==" }, "@babel/runtime": { - "version": "7.14.0", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.0.tgz", - "integrity": "sha512-JELkvo/DlpNdJ7dlyw/eY7E0suy5i5GQH+Vlxaq1nsNJ+H7f4Vtv3jMeCEgRhZZQFXTjldYfQgv2qmM6M1v5wA==" + "version": "7.15.3", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.15.3.tgz", + "integrity": "sha512-OvwMLqNXkCXSz1kSm58sEsNuhqOx/fKpnUnKnFB5v8uDda5bLNEHNgKPvhDN6IU0LDcnHQ90LlJ0Q6jnyBSIBA==" }, "@babel/template": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", - "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==" + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.14.5.tgz", + "integrity": "sha512-6Z3Po85sfxRGachLULUhOmvAaOo7xCvqGQtxINai2mEGPFm6pQ4z5QInFnUrRpfoSV60BnjyF5F3c+15fxFV1g==" }, "@babel/traverse": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.14.2.tgz", - "integrity": "sha512-TsdRgvBFHMyHOOzcP9S6QU0QQtjxlRpEYOy3mcCO5RgmC305ki42aSAmfZEMSSYBla2oZ9BMqYlncBaKmD/7iA==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.15.0.tgz", + "integrity": "sha512-392d8BN0C9eVxVWd8H6x9WfipgVH5IaIoLp23334Sc1vbKKWINnvwRpb4us0xtPaCumlwbTtIYNA0Dv/32sVFw==" }, "@babel/types": { - "version": "7.14.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.14.2.tgz", - "integrity": "sha512-SdjAG/3DikRHpUOjxZgnkbR11xUlyDMUFJdvnIgZEE16mqmY0BINMmc4//JMJglEmn6i7sq6p+mGrFWyZ98EEw==" + "version": "7.15.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.15.0.tgz", + "integrity": "sha512-OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==" }, "@meteorjs/babel": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/@meteorjs/babel/-/babel-7.11.1.tgz", - "integrity": "sha512-5WZZ3v7F2B5KpKBSOYe3kh83ijrj6o7oenCadqH59Lp9ONorZGJePQQg1OotepKzwNflBiw60cy9eFgi+/qhsw==" + "version": "7.13.0", + "resolved": "https://registry.npmjs.org/@meteorjs/babel/-/babel-7.13.0.tgz", + "integrity": "sha512-7GJ6UN//6B8bIkrOk+5ADUIMxe9pacnUQopHx2NqBnRiZ2IVgWPWn59TAPmh8SxAR5uaIZsdMFOTk3eNofc/aA==" }, "acorn": { "version": "6.4.2", @@ -509,9 +514,9 @@ "integrity": "sha512-kISrENsJ0z5dNPq5eRvcctITNHYXWOA4DUZRFYCz3jYCcvTb/A546LIddmoGNMVYg2U38OyFeNosQwI9ENTqIQ==" }, "babel-plugin-polyfill-corejs3": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.2.tgz", - "integrity": "sha512-l1Cf8PKk12eEk5QP/NQ6TH8A1pee6wWDJ96WjxrMXFLHLOBFzYM4moG80HFgduVhTqAFez4alnZKEhP/bYHg0A==" + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.2.4.tgz", + "integrity": "sha512-z3HnJE5TY/j4EFEa/qpQMSbcUJZ5JQi+3UFjXzn6pQCmIKc5Ug5j98SuYyH+m4xQnvKlMDIW4plLfgyVnd0IcQ==" }, "babel-plugin-polyfill-regenerator": { "version": "0.2.2", @@ -584,9 +589,9 @@ "integrity": "sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg==" }, "browserslist": { - "version": "4.16.6", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", - "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==" + "version": "4.16.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.7.tgz", + "integrity": "sha512-7I4qVwqZltJ7j37wObBe3SoTz+nS8APaNcrBOlgoirb6/HbEU2XxW/LpUDTCngM6iauwFqmRTuOMfyKnFGY5JA==" }, "call-bind": { "version": "1.0.2", @@ -594,9 +599,9 @@ "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==" }, "caniuse-lite": { - "version": "1.0.30001230", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001230.tgz", - "integrity": "sha512-5yBd5nWCBS+jWKTcHOzXwo5xzcj4ePE/yjtkZyUV1BTUmrBaA9MRGC+e7mxnqXSA90CmCA8L3eKLaSUkt099IQ==" + "version": "1.0.30001249", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001249.tgz", + "integrity": "sha512-vcX4U8lwVXPdqzPWi6cAJ3FnQaqXbBqy/GZseKNQzRj37J7qZdGcBtxq/QLFNLLlfsoXLUdHw8Iwenri86Tagw==" }, "chalk": { "version": "2.4.2", @@ -614,19 +619,19 @@ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "colorette": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", - "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.3.0.tgz", + "integrity": "sha512-ecORCqbSFP7Wm8Y6lyqMJjexBQqXSF7SSeaTyGGphogUjBlFP9m9o08wy86HL2uB7fMTxtOUzLMk7ogKcxMg1w==" }, "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==" + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz", + "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==" }, "core-js-compat": { - "version": "3.13.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.13.0.tgz", - "integrity": "sha512-jhbI2zpVskgfDC9mGRaDo1gagd0E0i/kYW0+WvibL/rafEHKAHO653hEXIxJHqRlRLITluXtRH3AGTL5qJmifQ==", + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.16.1.tgz", + "integrity": "sha512-NHXQXvRbd4nxp9TEmooTJLUf94ySUG6+DSsscBpTftN1lQLQ4LjnWvc7AoIo4UjDsFF3hB8Uh5LLCRRdaiT5MQ==", "dependencies": { "semver": { "version": "7.0.0", @@ -636,9 +641,9 @@ } }, "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==" + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==" }, "define-properties": { "version": "1.1.3", @@ -646,9 +651,9 @@ "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" }, "electron-to-chromium": { - "version": "1.3.741", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.741.tgz", - "integrity": "sha512-4i3T0cwnHo1O4Mnp9JniEco8bZiXoqbm3PhW5hv7uu8YLg35iajYrRnNyKFaN8/8SSTskU2hYqVTeYVPceSpUA==" + "version": "1.3.802", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.802.tgz", + "integrity": "sha512-dXB0SGSypfm3iEDxrb5n/IVKeX4uuTnFHdve7v+yKJqNpEP0D4mjFJ8e1znmSR+OOVlVC+kDO6f2kAkTFXvJBg==" }, "escalade": { "version": "3.1.1", @@ -701,9 +706,9 @@ "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==" }, "is-core-module": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", - "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.5.0.tgz", + "integrity": "sha512-TXCMSDsEHMEEZ6eCA8rwRDbLu55MRGmrctljsBX/2v1d9/GzqHOxW5c5oPSgrUt2vBFXebu9rGqckXGPWOlYpg==" }, "js-tokens": { "version": "4.0.0", @@ -751,9 +756,9 @@ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node-releases": { - "version": "1.1.72", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz", - "integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==" + "version": "1.1.74", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.74.tgz", + "integrity": "sha512-caJBVempXZPepZoZAPCWRTNxYQ+xtG/KAi4ozTA5A+nJ7IU+kLQCbqaUjb5Rwy14M9upBWiQ4NutcmW04LJSRw==" }, "object-keys": { "version": "1.1.1", @@ -781,9 +786,9 @@ "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==" }, "regenerator-runtime": { - "version": "0.13.7", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", - "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==" + "version": "0.13.9", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" }, "regenerator-transform": { "version": "0.14.5", @@ -813,9 +818,9 @@ } }, "reify": { - "version": "0.20.12", - "resolved": "https://registry.npmjs.org/reify/-/reify-0.20.12.tgz", - "integrity": "sha512-4BzKwDWyJJbukwI6xIJRh+BDTitoGzxdgYPiQQ1zbcTZW6I8xgHPw1DnVuEs/mEZQlYm1e09DcFSApb4UaR5bQ==", + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/reify/-/reify-0.22.0.tgz", + "integrity": "sha512-UrQ9IOSz6/dDRrvCZ6thk/c0b6uD8W7O8FWG4X6/t1bThvVdu+ppiOFaNRUwiVOAOoeMwKPdUiWZsJ7bIrBP8A==", "dependencies": { "semver": { "version": "5.7.1", @@ -860,9 +865,9 @@ "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=" }, "typescript": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.2.tgz", - "integrity": "sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw==" + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==" }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", diff --git a/packages/babel-compiler/package.js b/packages/babel-compiler/package.js index 2de69842fd..de83831112 100644 --- a/packages/babel-compiler/package.js +++ b/packages/babel-compiler/package.js @@ -6,11 +6,11 @@ Package.describe({ // isn't possible because you can't publish a non-recommended // release with package versions that don't have a pre-release // identifier at the end (eg, -dev) - version: '7.6.2' + version: '7.7.0' }); Npm.depends({ - '@meteorjs/babel': '7.11.1', + '@meteorjs/babel': '7.13.0', 'json5': '2.1.1' }); diff --git a/packages/ddp-server/package.js b/packages/ddp-server/package.js index 88830fddb5..55fc6478d7 100644 --- a/packages/ddp-server/package.js +++ b/packages/ddp-server/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "Meteor's latency-compensated distributed data server", - version: '2.4.0', + version: '2.4.1', documentation: null }); diff --git a/packages/ddp-server/stream_server.js b/packages/ddp-server/stream_server.js index b39373f2f9..49c0f1385d 100644 --- a/packages/ddp-server/stream_server.js +++ b/packages/ddp-server/stream_server.js @@ -119,7 +119,7 @@ StreamServer = function () { // only to send a message after connection on tests, useful for // socket-stream-client/server-tests.js - if (process.env.TEST_METADATA) { + if (process.env.TEST_METADATA && process.env.TEST_METADATA !== "{}") { socket.send(JSON.stringify({ testMessageOnConnect: true })); } diff --git a/packages/ecmascript/package.js b/packages/ecmascript/package.js index a9a6e42ca5..8536dd4b27 100644 --- a/packages/ecmascript/package.js +++ b/packages/ecmascript/package.js @@ -1,6 +1,6 @@ Package.describe({ name: 'ecmascript', - version: '0.15.2', + version: '0.15.3', summary: 'Compiler plugin that supports ES2015+ in all .js files', documentation: 'README.md' }); diff --git a/packages/ecmascript/transpilation-tests.js b/packages/ecmascript/transpilation-tests.js index e7fff88d48..0ae3495460 100644 --- a/packages/ecmascript/transpilation-tests.js +++ b/packages/ecmascript/transpilation-tests.js @@ -40,7 +40,7 @@ Tinytest.add("ecmascript - transpilation - class methods", (test) => { test.isTrue(contains(output, 'Foo.staticMethod = function staticMethod(')); test.isTrue(contains(output, '.prototypeMethod = function prototypeMethod(')); - test.isTrue(contains(output, '[computedMethod] = function (')); + test.isTrue(contains(output, '[_computedMethod] = function (')); test.isFalse(contains(output, 'createClass')); }); diff --git a/packages/facebook-oauth/package.js b/packages/facebook-oauth/package.js index d583cfef79..ac7beb5991 100644 --- a/packages/facebook-oauth/package.js +++ b/packages/facebook-oauth/package.js @@ -1,13 +1,13 @@ Package.describe({ summary: "Facebook OAuth flow", - version: "1.9.0" + version: "1.9.1" }); Package.onUse(api => { api.use('ecmascript', ['client', 'server']); api.use('oauth2', ['client', 'server']); api.use('oauth', ['client', 'server']); - api.use('http', ['server']); + api.use('http@1.4.4 || 2.0.0', ['server']); api.use('random', 'client'); api.use('service-configuration', ['client', 'server']); diff --git a/packages/github-oauth/package.js b/packages/github-oauth/package.js index 0960e5a135..c9ca612e01 100644 --- a/packages/github-oauth/package.js +++ b/packages/github-oauth/package.js @@ -1,13 +1,13 @@ Package.describe({ summary: 'GitHub OAuth flow', - version: '1.3.0' + version: '1.3.1' }); Package.onUse(api => { api.use('ecmascript', ['client', 'server']); api.use('oauth2', ['client', 'server']); api.use('oauth', ['client', 'server']); - api.use('http', 'server'); + api.use('http@1.4.4 || 2.0.0', 'server'); api.use('random', 'client'); api.use('service-configuration', ['client', 'server']); diff --git a/packages/google-oauth/package.js b/packages/google-oauth/package.js index 6e7d4588ba..8243b3b71f 100644 --- a/packages/google-oauth/package.js +++ b/packages/google-oauth/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "Google OAuth flow", - version: "1.4.0", + version: "1.4.1", }); Cordova.depends({ @@ -11,7 +11,7 @@ Package.onUse(api => { api.use("ecmascript"); api.use('oauth2', ['client', 'server']); api.use('oauth', ['client', 'server']); - api.use('http', ['server']); + api.use('http@1.4.4 || 2.0.0', ['server']); api.use('service-configuration'); api.use('random', 'client'); diff --git a/packages/meetup-oauth/package.js b/packages/meetup-oauth/package.js index c648033da1..83df9f74a3 100644 --- a/packages/meetup-oauth/package.js +++ b/packages/meetup-oauth/package.js @@ -1,13 +1,13 @@ Package.describe({ summary: 'Meetup OAuth flow', - version: '1.1.0' + version: '1.1.1' }); Package.onUse(api => { api.use('ecmascript'); api.use('oauth2', ['client', 'server']); api.use('oauth', ['client', 'server']); - api.use('http', 'server'); + api.use('http@1.4.4 || 2.0.0', 'server'); api.use('random', 'client'); api.use('service-configuration', ['client', 'server']); diff --git a/packages/meteor-developer-oauth/package.js b/packages/meteor-developer-oauth/package.js index 13b2e6e419..b1463542d5 100644 --- a/packages/meteor-developer-oauth/package.js +++ b/packages/meteor-developer-oauth/package.js @@ -1,12 +1,12 @@ Package.describe({ summary: 'Meteor developer accounts OAuth flow', - version: '1.3.0' + version: '1.3.1' }); Package.onUse(api => { api.use('oauth2', ['client', 'server']); api.use('oauth', ['client', 'server']); - api.use('http', ['server']); + api.use('http@1.4.4 || 2.0.0', ['server']); api.use(['ecmascript', 'service-configuration'], ['client', 'server']); api.use('random', 'client'); diff --git a/packages/meteor-tool/package.js b/packages/meteor-tool/package.js index 5e913c6a83..768bc5ad96 100644 --- a/packages/meteor-tool/package.js +++ b/packages/meteor-tool/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "The Meteor command-line tool", - version: '2.3.4' + version: '2.3.6' }); Package.includeTool(); diff --git a/packages/meteor/dynamics_nodejs.js b/packages/meteor/dynamics_nodejs.js index 963d146b06..051ebedb17 100644 --- a/packages/meteor/dynamics_nodejs.js +++ b/packages/meteor/dynamics_nodejs.js @@ -12,12 +12,24 @@ Meteor._nodeCodeMustBeInFiber = function () { } }; +/** + * @memberOf Meteor + * @summary Constructor for EnvironmentVariable + * @locus Anywhere + * @class + */ Meteor.EnvironmentVariable = function () { this.slot = nextSlot++; }; var EVp = Meteor.EnvironmentVariable.prototype; +/** + * @summary Return value of environment variable if available + * @locus Anywhere + * @method get + * @memberof Meteor.EnvironmentVariable + */ EVp.get = function () { Meteor._nodeCodeMustBeInFiber(); @@ -44,6 +56,15 @@ EVp.getOrNullIfOutsideFiber = function () { return this.get(); }; +/** + * @summary Set the environment variable to the given value while a function is run + * @locus Anywhere + * @method withValue + * @memberof Meteor.EnvironmentVariable + * @param {Any} value Value the environment variable should be set to + * @param {Function} func The function to run + * @return {Any} Return value of function + */ EVp.withValue = function (value, func) { Meteor._nodeCodeMustBeInFiber(); @@ -79,6 +100,17 @@ EVp.withValue = function (value, func) { // an exception. If it is a string, it should be a description of the // callback, and when an exception is raised a debug message will be // printed with the description. +/** + * @summary Stores the current Meteor environment variables, and wraps the + * function to run with the environment variables restored. On the server, the + * function is wrapped within a fiber. + * @locus Anywhere + * @memberOf Meteor + * @param {Function} func Function that is wrapped + * @param {Function} onException + * @param {Object} _this Optional `this` object against which the original function will be invoked + * @return {Function} The wrapped function + */ Meteor.bindEnvironment = function (func, onException, _this) { Meteor._nodeCodeMustBeInFiber(); diff --git a/packages/npm-mongo/.npm/package/npm-shrinkwrap.json b/packages/npm-mongo/.npm/package/npm-shrinkwrap.json index 0e37721b14..3f30a25eaa 100644 --- a/packages/npm-mongo/.npm/package/npm-shrinkwrap.json +++ b/packages/npm-mongo/.npm/package/npm-shrinkwrap.json @@ -37,14 +37,14 @@ "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==" }, "mongodb": { - "version": "3.6.6", - "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.6.6.tgz", - "integrity": "sha512-WlirMiuV1UPbej5JeCMqE93JRfZ/ZzqE7nJTwP85XzjAF4rRSeq2bGCb1cjfoHLOF06+HxADaPGqT0g3SbVT1w==" + "version": "3.6.10", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.6.10.tgz", + "integrity": "sha512-fvIBQBF7KwCJnDZUnFFy4WqEFP8ibdXeFANnylW19+vOwdjOAvqIzPdsNCEMT6VKTHnYu4K64AWRih0mkFms6Q==" }, "optional-require": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.0.3.tgz", - "integrity": "sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.1.tgz", + "integrity": "sha512-EnUe33GTAltyZlIsQ2l93KzBC9zi8BsxLvKP3wxALOsz/YIakVojyuZsv5PFFk8y8e6r+SbaPIsNmyPoSK0OHw==" }, "process-nextick-args": { "version": "2.0.1", @@ -63,6 +63,11 @@ } } }, + "require-at": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz", + "integrity": "sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==" + }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", diff --git a/packages/npm-mongo/package.js b/packages/npm-mongo/package.js index cf7ae2e01d..600d277450 100644 --- a/packages/npm-mongo/package.js +++ b/packages/npm-mongo/package.js @@ -3,12 +3,12 @@ Package.describe({ summary: "Wrapper around the mongo npm package", - version: "3.9.0", + version: "3.9.1", documentation: null }); Npm.depends({ - mongodb: "3.6.6" + mongodb: "3.6.10" }); Package.onUse(function (api) { diff --git a/packages/oauth1/package.js b/packages/oauth1/package.js index e970b88e29..7cf976b8ee 100644 --- a/packages/oauth1/package.js +++ b/packages/oauth1/package.js @@ -1,6 +1,6 @@ Package.describe({ summary: "Common code for OAuth1-based login services", - version: "1.4.0", + version: "1.4.1", }); Package.onUse(api => { @@ -10,7 +10,7 @@ Package.onUse(api => { api.use('oauth', ['client', 'server']); api.use([ 'check', - 'http' + 'http@1.4.4 || 2.0.0' ], 'server'); api.use('mongo'); diff --git a/packages/typescript/package.js b/packages/typescript/package.js index 4a6e6742a7..1231b23e36 100644 --- a/packages/typescript/package.js +++ b/packages/typescript/package.js @@ -1,6 +1,6 @@ Package.describe({ name: "typescript", - version: "4.3.2", + version: "4.3.5", summary: "Compiler plugin that compiles TypeScript and ECMAScript in .ts and .tsx files", documentation: "README.md" }); diff --git a/packages/weibo-oauth/package.js b/packages/weibo-oauth/package.js index c0a91db9b0..02cea0b9c6 100644 --- a/packages/weibo-oauth/package.js +++ b/packages/weibo-oauth/package.js @@ -1,12 +1,13 @@ Package.describe({ summary: "Weibo OAuth flow", - version: "1.3.0", + version: "1.3.1", }); Package.onUse(api => { api.use('oauth1', ['client', 'server']); api.use('oauth', ['client', 'server']); api.use('random', 'client'); + api.use('http@1.4.4 || 2.0.0', 'server'); api.use(['service-configuration', 'ecmascript'], ['client', 'server']); api.addFiles('weibo_client.js', 'client'); diff --git a/scripts/admin/meteor-release-experimental.json b/scripts/admin/meteor-release-experimental.json index ef97903f39..dc307d860b 100644 --- a/scripts/admin/meteor-release-experimental.json +++ b/scripts/admin/meteor-release-experimental.json @@ -1,6 +1,6 @@ { "track": "METEOR", - "version": "2.3.3-rc.0", + "version": "2.3.6-rc.0", "recommended": false, "official": false, "description": "Meteor" diff --git a/scripts/admin/meteor-release-official.json b/scripts/admin/meteor-release-official.json index 4fbe1ca896..98b7f048ef 100644 --- a/scripts/admin/meteor-release-official.json +++ b/scripts/admin/meteor-release-official.json @@ -1,6 +1,6 @@ { "track": "METEOR", - "version": "2.3.4", + "version": "2.3.6", "recommended": false, "official": true, "description": "The Official Meteor Distribution" diff --git a/scripts/build-dev-bundle-common.sh b/scripts/build-dev-bundle-common.sh index 135253baaf..9ff42125a8 100644 --- a/scripts/build-dev-bundle-common.sh +++ b/scripts/build-dev-bundle-common.sh @@ -5,10 +5,10 @@ set -u UNAME=$(uname) ARCH=$(uname -m) -NODE_VERSION=14.17.4 +NODE_VERSION=14.17.6 MONGO_VERSION_64BIT=4.4.4 MONGO_VERSION_32BIT=3.2.22 -NPM_VERSION=6.14.13 +NPM_VERSION=6.14.15 # If we built Node from source on Jenkins, this is the build number. NODE_BUILD_NUMBER= diff --git a/scripts/dev-bundle-tool-package.js b/scripts/dev-bundle-tool-package.js index 66623e6f6d..c3e6d42e7a 100644 --- a/scripts/dev-bundle-tool-package.js +++ b/scripts/dev-bundle-tool-package.js @@ -10,12 +10,12 @@ var packageJson = { dependencies: { // Explicit dependency because we are replacing it with a bundled version // and we want to make sure there are no dependencies on a higher version - npm: "6.14.13", + npm: "6.14.15", pacote: "https://github.com/meteor/pacote/tarball/a81b0324686e85d22c7688c47629d4009000e8b8", "node-gyp": "8.0.0", "node-pre-gyp": "0.15.0", - typescript: "4.3.2", - "@meteorjs/babel": "7.11.1", + typescript: "4.3.5", + "@meteorjs/babel": "7.13.0", // Keep the versions of these packages consistent with the versions // found in dev-bundle-server-package.js. "meteor-promise": "0.9.0", diff --git a/tools/README.md b/tools/README.md index 46b8a18009..c8c68fdb8c 100644 --- a/tools/README.md +++ b/tools/README.md @@ -140,8 +140,7 @@ The entry-point of the tools code is in `index.js`. The Meteor Tool code has two modes of running: - from local checkout for development -- from a production release installed by running -`curl -L https://install.meteor.com | sh` or a Windows installer. +- from a production release installed by running `npm install -g meteor`. There are two different `meteor` / `meteor.bat` starting scripts in development and production. The production one is written by the packaging code. diff --git a/tools/cli/commands.js b/tools/cli/commands.js index a689897b0f..848848cfaa 100644 --- a/tools/cli/commands.js +++ b/tools/cli/commands.js @@ -1477,7 +1477,9 @@ main.registerCommand({ 'build-only': { type: Boolean }, free: { type: Boolean }, plan: { type: String }, - mongo: { type: Boolean } + 'deploy-token': { type: String }, + mongo: { type: Boolean }, + owner: { type: String } }, allowUnrecognizedOptions: true, requiresApp: function (options) { @@ -1508,7 +1510,7 @@ function deployCommand(options, { rawOptions }) { } const loggedIn = auth.isLoggedIn(); - if (! loggedIn) { + if (! loggedIn && !options["deploy-token"]) { Console.error( "You must be logged in to deploy, just enter your email address."); Console.error(); @@ -1564,6 +1566,8 @@ function deployCommand(options, { rawOptions }) { site, settingsFile: options.settings, free: options.free, + deployToken: options['deploy-token'], + owner: options.owner, mongo: options.mongo, buildOptions: buildOptions, plan, diff --git a/tools/isobuild/bundler.js b/tools/isobuild/bundler.js index 2eb8aff68c..d49b3b1c84 100644 --- a/tools/isobuild/bundler.js +++ b/tools/isobuild/bundler.js @@ -2834,7 +2834,8 @@ var writeFile = Profile("bundler writeFile", function (file, builder, options) { } if (options && options.sourceMapUrl) { - data = addSourceMappingURL(data, options.sourceMapUrl); + const url = (process.env.ROOT_URL || "") + options.sourceMapUrl; + data = addSourceMappingURL(data, url); } else if (!options || !options.leaveSourceMapUrls) { // If we do not have an options.sourceMapUrl to append, then we still // want to remove any existing //# sourceMappingURL comments. @@ -2890,7 +2891,7 @@ function addSourceMappingURL(data, url, targetPath) { parts.push( newLineBuffer, - Buffer.from("//# sourceMappingURL=" + (process.env.ROOT_URL || "") + url, "utf8"), + Buffer.from("//# sourceMappingURL=" + url, "utf8"), newLineBuffer // trailing newline ); diff --git a/tools/meteor-services/deploy.js b/tools/meteor-services/deploy.js index 80e4a37237..c1f89eec41 100644 --- a/tools/meteor-services/deploy.js +++ b/tools/meteor-services/deploy.js @@ -89,8 +89,12 @@ function deployRpc(options) { if (options.headers.cookie) { throw new Error("sorry, can't combine cookie headers yet"); } - options.qs = Object.assign({}, options.qs, - {capabilities: CAPABILITIES.slice()}); + options.qs = Object.assign( + {}, + options.qs, + { capabilities: CAPABILITIES.slice() }, + options.deployWithTokenProps || {} + ); // If we are waiting for deploy, we let Galaxy know so it can // use that information to send us the right deploy message response. if (options.waitForDeploy) { @@ -351,13 +355,13 @@ function canonicalizeSite(site) { // Executes the poll to check for deployment success and outputs proper messages // to user about the status of their app during the polling process -async function pollForDeploymentSuccess(versionId, deployPollTimeout, result, site) { +async function pollForDeploymentSuccess(versionId, deployPollTimeout, result, site, deployWithTokenProps) { // Create a default polling configuration for polling for deploy / build // In the future, we may change this to be user-configurable or smart // The user can only currently configure the polling timeout via a flag const pollingState = new PollingState(deployPollTimeout); await sleepForMilliseconds(pollingState.initialWaitTimeMs); - const deploymentPollResult = await pollForDeploy(pollingState, versionId, site); + const deploymentPollResult = await pollForDeploy(pollingState, versionId, site, deployWithTokenProps); if (deploymentPollResult && deploymentPollResult.isActive) { return 0; } @@ -398,7 +402,7 @@ class PollingState { // messages pertaining to the status of the version, which will then be reported // directly to the user. When the poll is complete, it will return an object // with information about the final state of the version and the app. -async function pollForDeploy(pollingState, versionId, site) { +async function pollForDeploy(pollingState, versionId, site, deployWithTokenProps) { const { deadline, pollIntervalMs, @@ -413,6 +417,7 @@ async function pollForDeploy(pollingState, versionId, site) { operand: versionId, expectPayload: ['message', 'finishStatus'], printDeployURL: false, + deployWithTokenProps }); // Check the details of the Version Status response and compare message to last call @@ -437,7 +442,7 @@ async function pollForDeploy(pollingState, versionId, site) { } else if (new Date() < deadline) { Console.warn(`Error checking deploy status; will retry: ${errorMessage}`); await sleepForMilliseconds(pollIntervalMs); - return await pollForDeploy(pollingState, versionId, site); + return await pollForDeploy(pollingState, versionId, site, deployWithTokenProps); } } @@ -446,7 +451,7 @@ async function pollForDeploy(pollingState, versionId, site) { if(new Date() < deadline && !finishStatus.isFinished) { // Wait for a set interval and then poll again await sleepForMilliseconds(pollIntervalMs); - return await pollForDeploy(pollingState, versionId, site); + return await pollForDeploy(pollingState, versionId, site, deployWithTokenProps); } else if (!finishStatus.isFinished) { Console.info(`Polling timed out. To check the status of your app, visit ${versionStatusResult.payload.galaxyUrl}. To wait longer, pass a timeout @@ -516,7 +521,14 @@ export async function bundleAndDeploy(options) { site: site, preflight: true, promptIfAuthFails: promptIfAuthFails, - qs: options.rawOptions, + qs: Object.assign( + {}, + options.rawOptions, + { + deployToken: options.deployToken, + owner: options.owner, + } + ), printDeployURL: true }); @@ -628,6 +640,11 @@ export async function bundleAndDeploy(options) { return 0; } + const deployWithTokenProps = { + deployToken: options.deployToken, + owner: options.owner + }; + Console.info('Preparing to upload your app...'); const result = buildmessage.enterJob({ title: "uploading" @@ -643,7 +660,8 @@ export async function bundleAndDeploy(options) { { free: options.free, plan: options.plan, - mongo: options.mongo + mongo: options.mongo, + ...deployWithTokenProps, }, ), bodyStream: createTarGzStream(pathJoin(buildDir, 'bundle')), @@ -676,7 +694,9 @@ export async function bundleAndDeploy(options) { result.payload.newVersionId, options.deployPollingTimeoutMs, result, - site); + site, + deployWithTokenProps, + ); } return 0; }; diff --git a/tools/tests/apps/custom-minifier/packages/custom-minifier/plugin/minify.js b/tools/tests/apps/custom-minifier/packages/custom-minifier/plugin/minify.js index 45f7585f4a..7b2839f4e4 100644 --- a/tools/tests/apps/custom-minifier/packages/custom-minifier/plugin/minify.js +++ b/tools/tests/apps/custom-minifier/packages/custom-minifier/plugin/minify.js @@ -14,7 +14,7 @@ Plugin.registerMinifier({ function CustomMinifier(type) { this.type = type; -}; +} CustomMinifier.prototype.processFilesForBundle = function (files, options) { var self = this;